使用lxml选择标记中的数据的xpath

时间:2012-02-08 04:58:21

标签: python xpath screen-scraping lxml

我正在尝试在下面的代码中选择“(6)”:

<a class="itemRating" href="http://www.newegg.com/Product/ProductReview.aspx?Item=N82E16834200347" title="Rating + 4">
<span class="eggs r4">&nbsp;</span>
(6)
</a>

xpath,我将称之为review,位于下面的()中:

review = site.xpath('/html/body/div[3]/div[2]/table/tr/td[2]/div/div[8]/div/div/div/a[3]

当我尝试打印review[0]。文字时,会打印“None'而不是(6)

有什么想法吗?

2 个答案:

答案 0 :(得分:3)

(6)位于<span>元素的尾部:

>>> a[0].tail
'\n(6)\n'

答案 1 :(得分:0)

您可以使用:

review[0].text_content().strip()

review[0].xpath('string()').strip()

我将你的xpath写成:

review = site.xpath('//a[@class="itemRating"]')