繁体   English   中英

使用xpath / lxml刮取文本

[英]Scraping text with xpath/lxml

我正在尝试使用xpath / lxml从http://www.cellartracker.com/wine.asp?iWine=91411中使用“2005-2013之间的饮料”文本中删除“2005-2013”​​文本,并且我只能为本网站上的其他一些页面做这件事,而不是这个。 不确定我做错了/如果我从元素复制的xpath是不正确的

它告诉我:

print(content_divs[0].text_content().strip())
IndexError: list index out of range

这是我的代码:

import requests, lxml.html
page = requests.get('http://www.cellartracker.com/wine.asp?iWine=91411')
html = lxml.html.fromstring(page.content)
content_divs = html.xpath('//*[@id="wine_copy_inner"]/p/a[4]')
print(content_divs[0].text_content().strip())

谢谢你的帮助!!!

xpath数组是否为零索引?

//*[@id="wine_copy_inner"]/p/a[4]应该是...[3]

貌似数量a当您登录VS登出标签的变化。 可能想使用另一种方法来定位此标记。

如果你想获得"2005 - 2013"你可以使用下面的代码

content = html.xpath('//a[@title="Source: Community"]/text()')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM