我正在复裂上尝试lxml请求,我不明白为什么它不能工作。程序直到最大重试时才停止运行,在此我得到了以下错误:
回溯(最近一次调用):requests.exceptions.ConnectionError: requests.exceptions.ConnectionError port=80中的文件"python",第6行):requests.exceptions.ConnectionError: /ws/index.php?pid=29400.html (由NewConnectionError(':未能建立新连接: Errno -2名称或服务未知‘)超出的最大重试)
我的代码非常简单:
from lxml import html
import requests
url = 'http://www.presidency.ucsb.edu/ws/index.php?pid=29400.html'
r = requests.get(url)
tree = html.fromstring(r.content)
text = tree.xpath('//span[@class="displaytext"]/text()')
print(text)我怎么才能让它运行呢?我正试图获得该网站的内容,位于“显示文本”的跨度类。我一直在借鉴这个Python指南。
Python版本3.5
发布于 2016-12-23 06:01:59
我是Repl.it的一名工程师,这是我们平台的一个限制。我们目前不允许传出网络请求。
发布于 2016-12-16 12:13:30
切换到答案,因为它可以让我更好地列出来的东西。
看看你所针对的网站的html。使用此命令,您只需选择一个特定的标记:
text = tree.xpath('//span[@class="displaytext"]/text()')指向类“显示文本”的特定范围。
您可以将代码更改为:
text = tree.xpath('//span[@class="displaytext"]/..')
for element in text[0]:
print element这将使用类"displaytext“选择span,然后选择该span的父类型。在for循环中,您将打印该父级的所有子级。
现在,它也显示了真正的问题:段落元素不在该列表中。抱歉,我不知道答案。
https://stackoverflow.com/questions/41162897
复制相似问题