2017-05-08 12 views
1
私はappIDがの格付け(複数可)を引き出すためにApp StoreのXMLを解析するタフな時間を過ごしてい

(appIDがが298307011である)パースiPhoneのApp Store RSS XML

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

評価Iアプリのレビューエントリーのそれぞれを引き出しようとしています。ツリー構造は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

名前空間とlmxlとXPathを使用iter

以外のものを使用してを追加する必要がありますように見える:

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 cool! (http://stackoverflow.com/help/privileges/vote-up)[upvote]して、それが役に立つと分かったら答えを受け入れてください:) – salparadise

関連する問題