+-

我目前正在学习如何使用XPath从 HTML文档中提取信息.我正在使用 python并且在获取诸如网页标题之类的内容时没有遇到任何问题,但是当我尝试获取表中特定单元格的文本时,我只是返回一个空值.
这是我的代码,我使用chrome来复制我希望从中获取值的表格单元格的XPath.
from lxml import html
import requests
page = requests.get('https://en.wikipedia.org/wiki/List_of_Olympic_Games_host_cities')
tree = html.fromstring(page.content)
#This will get the cell text:
location = tree.xpath('//*[@id="mw-content-text"]/div/table[1]/tbody/tr[1]/td[3]/text()')
print('Location: ', location)
最佳答案
戳了一下.
尝试:
tree.xpath( ‘// * [@ ID = “MW-内容文本”] / DIV /表[1] / TR / TD [3] /文本()’)
我认为Chrome中呈现的网页与请求返回的内容略有不同. (即不需要textbody,并指定tr [1]产生空结果.仅供参考.你提供的xpath签出并在chrome中工作正常.
请参阅下面的Andersson的答案,但基本上,可以通过浏览器添加tbody,最好不要在路径中使用它
点击查看更多相关文章
转载注明原文:使用XPath使用python在单元格中获取文本 - 乐贴网