次のページを解析しています:http : //www.amazon.de/product-reviews/B004K1K172解析にlxmlベースのetreeを使用しています。
ページコンテンツ全体を含むコンテンツ変数
コード:
myparser = etree.HTMLParser(encoding="utf-16") #As characters are beyond utf-8
tree = etree.HTML(content,parser = myparser)
review = tree.xpath(".//*[@id='productReviews']/tr/td[1]/div[1]/text()")
これは空のリストを返しています。
しかし、コードを次のように変更すると、次のようになります。
myparser = etree.HTMLParser(encoding="utf-8") #Neglecting some reviews having ascii character above utf-8
tree = etree.HTML(content,parser = myparser)
review = tree.xpath(".//*[@id='productReviews']/tr/td[1]/div[1]/text()")
現在、同じXpathで適切なデータを取得しています。しかし、ほとんどのレビューは拒否されます。それで、これはlxmlベースのxpathまたは私のxpath実装の問題ですか?
上記のページをutf-16エンコーディングで解析するにはどうすればよいですか?