2017-05-08 57 views
1

我有一个艰难的时间解析App Store的XML拉出来一个AppID评级(S)(AP​​PID为298307011)解析iPhone App Store的RSS XML

XML:https://itunes.apple.com/us/rss/customerreviews/id=298307011/xml

该评级我我试图为每个应用程序审查条目拉出来。树结构是root> entry - > im:rating

我的代码没有获取评级文本。

import urllib2 
import xml.etree.ElementTree as ET 
url = 'https://itunes.apple.com/us/rss/customerreviews/id=298307011/xml' 

xml_string = urllib2.urlopen(url).read() 
root = ET.fromstring(xml_string) 


for rating in root.iter('im:rating'): 
    print rating.text 

回答

0

看起来你需要添加命名空间和使用的东西,除了iter

使用lmxl和XPath:

import urllib2 
import lxml.etree as etree 
url = 'https://itunes.apple.com/us/rss/customerreviews/id=298307011/xml' 

xml_string = urllib2.urlopen(url).read() 
root = etree.fromstring(xml_string) 


for rating in root.xpath('//im:rating', namespaces={'im':'http://itunes.apple.com/rss'}): 
    print rating.text 
+0

它的工作。 lxml对我来说是新的,它看起来像一个知道的强大工具。谢谢。 –

+0

@JoGeo酷!请[upvote](http://stackoverflow.com/help/privileges/vote-up)并接受答案,如果你发现它有用:) – salparadise