我想弄清楚如何使用lxml解析xml從url來返回title屬性的值。有誰知道我有什麼錯,或者什麼會返回標題值/文本?因此,在下面的例子中我想返回的值從URLPython - 使用lxml返回title.text的值attrib
XML '雜草 - 高清電視S05E05 - - 範奈斯':
<?xml version="1.0" encoding="UTF-8"?>
<subsonic-response xmlns="http://subsonic.org/restapi" status="ok" version="1.8.0">
<song id="11345" parent="11287" title="Weeds - S05E05 - Van Nuys - HD TV" album="Season 5" artist="Weeds" isDir="false" created="2009-07-06T22:21:16" duration="1638" bitRate="384" size="782304110" suffix="mkv" contentType="video/x-matroska" isVideo="true" path="Weeds/Season 5/Weeds - S05E05 - Van Nuys - HD TV.mkv" transcodedSuffix="flv" transcodedContentType="video/x-flv"/>
</subsonic-response>
我當前的Python代碼:
import lxml
from lxml import html
from urllib2 import urlopen
url = 'https://myurl.com'
tree = html.parse(urlopen(url))
songs = tree.findall('{*}song')
for song in songs:
print song.attrib['title']
通過上面的代碼,我沒有獲得數據返回,有什麼想法?
打印出樹=
<lxml.etree._ElementTree object at 0x0000000003348F48>
打印出來的歌曲=所有的
[]
您沒有使用'lxml'功能。只有標準庫'ElementTree'實現在你的例子中實際上正在工作。可以安全地從代碼中刪除'import lxml.html as lh'。 –
我已經嘗試過內置的ElementTree,但永遠無法讓它工作,所以我想我會嘗試lxml。只是無法弄清楚如何編寫正確的代碼。 – nutt318