首先XML: http://api.chartlyrics.com/apiv1.asmx//GetLyric?lyricId=90&lyricCheckSum=9600c891e35f602eb6e1605fb7b5229e使用Nokogiri從這個XML提要中獲得「LyricArtist」需要什麼?
doc = Nokogiri::XML(open("http://api.chartlyrics.com/apiv1.asmx//GetLyric?lyricId=90&lyricCheckSum=9600c891e35f602eb6e1605fb7b5229e"))
成功將抓住文檔內容。
此後,我無法進入並獲取數據,我不知道爲什麼?
例如,我希望:
doc.xpath("//LyricArtist")
踢回的藝術家,但事實並非如此。
我已經嘗試了同樣的事情,與其他飼料,如默認RSS提要,任何WordPress安裝提供,如果我這樣做:
doc.xpath("//link")
我得到的所有的「鏈接」列表。
我絕對錯過了一些東西,並會喜歡你的輸入。謝謝!!
Mads, 非常感謝您花時間向我解釋這一點。 我現在有作業,需要閱讀XML/Namespacing,因爲我覺得這應該對我來說很明顯,事實並非如此。 雖然我確實有一個額外的問題; Nokogiri對我在這裏想要做的事情有好處? 基於我的研究,我發現Nokogiri比大多數其他庫(特定於XML解析)更快,我很喜歡大部分的語法。 其他建議? – 2010-06-14 17:57:44
的Mads, 我發現這個工程太: doc.xpath( '//的xmlns:LyricArtist') 原因是在這裏:http://tenderlovemaking.com/2009/04/23/namespaces-in-xml/ 檢查「獎金回合」。 Mads,再一次,非常感謝你 – 2010-06-14 18:18:02
如果這個「獎金輪」的語法工作,去吧。它的語法較短,編寫起來更容易。只要你明白命名空間是什麼以及命名空間前綴是如何工作的,那麼你就可以準備什麼時候它可能很重要,以及如何處理它。 – 2010-06-15 00:50:07