L
Louis-pierre Lp.dahito
hey folks,
I'm trying to make a basic feeds parser... It works fine when I have one
feed only but as soon as I try to parse an array of feeds, it's gonna
parse it correctly but I won't be able to fetch any data out of it...
Here is my code...
class Site
attr_accessor :domain, :name
def initialize
@domain = domain
@name = name
end
end
a = Site.new
a.domain = "http://www.mininova.org/rss.xml"
a.name = "mininova"
b = Site.new
b.domain = "http://static.demonoid.com/rss/0.xml"
b.name = "demonoid"
c = Site.new
c.domain = "http://rss.thepiratebay.org/0"
c.name = "thepiratebay"
allfeeds = [ a, b, c ]
require 'rss/1.0'
require 'rss/2.0'
require 'open-uri'
def parse_torrents(source)
# source = self.domain # url or local file
content = "" # raw content of rss feed will be loaded here
open(source) do |s| content = s.read end
RSS:arser.parse(content, false)
end
torrents = allfeeds.each { |feed| parse_torrents(feed.domain) }
torrents.each { |t| puts t.channel.title }
The error message I get is only on the last line of code... removing the
last line doesn't show any error message.
Here is the message i get from RubyMate:
NoMethodError: undefined method ‘channel’ for #<Site:0x8a520>
at top level in global.rb at line 38
method each in global.rb at line 38
at top level in global.rb at line 38
Program exited.
I need help even though it's a pretty basic question...
Thank you guys...
I'm trying to make a basic feeds parser... It works fine when I have one
feed only but as soon as I try to parse an array of feeds, it's gonna
parse it correctly but I won't be able to fetch any data out of it...
Here is my code...
class Site
attr_accessor :domain, :name
def initialize
@domain = domain
@name = name
end
end
a = Site.new
a.domain = "http://www.mininova.org/rss.xml"
a.name = "mininova"
b = Site.new
b.domain = "http://static.demonoid.com/rss/0.xml"
b.name = "demonoid"
c = Site.new
c.domain = "http://rss.thepiratebay.org/0"
c.name = "thepiratebay"
allfeeds = [ a, b, c ]
require 'rss/1.0'
require 'rss/2.0'
require 'open-uri'
def parse_torrents(source)
# source = self.domain # url or local file
content = "" # raw content of rss feed will be loaded here
open(source) do |s| content = s.read end
RSS:arser.parse(content, false)
end
torrents = allfeeds.each { |feed| parse_torrents(feed.domain) }
torrents.each { |t| puts t.channel.title }
The error message I get is only on the last line of code... removing the
last line doesn't show any error message.
Here is the message i get from RubyMate:
NoMethodError: undefined method ‘channel’ for #<Site:0x8a520>
at top level in global.rb at line 38
method each in global.rb at line 38
at top level in global.rb at line 38
Program exited.
I need help even though it's a pretty basic question...
Thank you guys...