2016-05-11 53 views
0

我正在使用Nokogiri解析RSS源(如http://feeds.soundcloud.com/users/soundcloud:users:70685608/sounds.rss)。然而,儘管我嘗試解析文檔有多少種不同的方式,但我無法獲取我想要的數據元素。例如,如果我想獲得itunes:name block,我已經嘗試了下面的內容,但這些都沒有返回我想要的內容。使用Nokogiri解析XML文件時無法獲取NameSpace

page = HTTParty.get('http://feeds.soundcloud.com/users/soundcloud:users:70685608/sounds.rss') 
parse_feed = Nokogiri::HTML(page) 

#tried 1 
parse_feed.css('channel|itunes:owner') 
#tried 2 
parse_feed.css('itunes:name') 
#tried 3 
parse_feed.xpath('//itunes:email') 

我只是在這裏我的xpath或css搜索來獲取我正在尋找的塊?

回答

0

它通過切換Nokogiri::HTML(page)Nokogiri::XML(page)爲我工作。然後,我可以使用xpath來提取iTunes:名稱塊:

page = HTTParty.get('http://feeds.soundcloud.com/users/soundcloud:users:70685608/sounds.rss') 
parse_feed = Nokogiri::XML(page) 
itunes_name = parse_feed.xpath("//itunes:name") 
# do stuff