当前位置: 首页 > 知识库问答 >
问题:

Python-requests.get(连接中止.', OSError("(60,'ETIMEDOUT')

宫元徽
2023-03-14

我是web scraper的新手,尝试访问一个网站,但出现了太多错误,并被告知(连接已中止)。

from bs4 import BeautifulSoup
import requests
urla="https://www.loopnet.com/search/office-space/san-diego-ca/for-lease/?sk=02fa1ad85634ef43bfd21f24bbe3a14a"
source = requests.get(urla).text
print(source)

OSError Traceback(最近一次调用上次)~/opt/anaconda3/lib/python3.7/site-packages/urllib3/connectionpool.py在urlopen中(self、method、url、body、headers、retries、redirect、assert\u same\u host、timeout、pool\u timeout、release\u conn、chunked、body\u pos、**response\u kw)671 headers=headers--

~/opt/anaconda3/lib/python3.7/超文本传输协议/client.py开始(自我)305而真:--

~/opt/anaconda3/lib/python3.7/http/client.py处于读取状态(self)266 def读取状态(self):--

在readinto(self,b)588中~/opt/anaconda3/lib/python3.7/socket.py尝试:--

将~/opt/anaconda3/lib/python3.7/site-packages/urllib3/contrib/pyopenssl.py放入(self,*args,**kwargs)317其他:--

OSError:(60“ETIMEDOUT”)

在处理上述异常期间,发生了另一个异常:

在发送(自己,请求,流,超时,验证,证书,代理)448重试=self.max_retries,-

urlopen中的~/opt/anaconda3/lib/python3.7/site-packages/urllib3/connectionpool.py(self、method、url、body、headers、retries、redirect、assert\u same\u host、timeout、pool\u timeout、release\u conn、chunked、body\u pos、**response\u kw)719次重试次数=重试次数。增量(--

连接错误:('连接中止.', OSError("(60,'ETIMEDOUT')")) (类似这样的东西)

共有1个答案

冀冯浩
2023-03-14

出现此错误的原因是服务器没有响应或响应时间过长。您应该始终将请求封装在try块中以避免程序崩溃,这样您就可以通过使用requests.exceptions模块捕获任何错误或特定错误

import requests
url="https://www.loopnet.com/search/office-space/san-diego-ca/for-lease/?sk=02fa1ad85634ef43bfd21f24bbe3a14a"

抓住任何错误

try:
    source = requests.get(url).text
except:
    print 'ERROR'

捕捉连接错误

from requests.exceptions import ConnectionError

try:
    source = requests.get(url).text
except ConnectionError:                  # <-- this is your case scenario
    print 'NOT RESPONDING'

捕获时间错误

from requests.exceptions import ReadTimeout

try:
    source = requests.get(url, timeout=2).text  # <-- you should always use timeout to avoid requests hanging or taking too long to respond
except ReadTimeout:
    print 'TIMEOUT'

您可以像这样查看所有请求异常

for exception in dir(requests.exceptions):
    print exception

读取请求异常文档:https://requests.readthedocs.io/en/latest/user/quickstart/#errors-and-exceptions

 类似资料:
  • 我正在制作一个脚本,该脚本对文件夹中的所有pdf进行水印。它的工作,但然后我调整它,使水印pdf移动到目标文件夹,突然之间,我不能让它工作了... 错误: 回溯(最近一次调用last):文件“pdf_watermarker_v2.py”,第25行,在source_read=PyPDF2中。PdfileReader(source\u open)文件“C:\Users\niels\AppData\Lo

  • 我试图将文件从客户端传输到服务器。但由于错误,我没有收到任何文件。 这是我的server.py文件,但我得到这个错误,当我要从客户端接收文件。 这是我的客户。请看下面。但这并没有出现错误。 这是我的服务器错误。派克

  • 问题内容: 尝试部署Java应用程序时遇到问题。 要么 在 pom.xml中, 我有这个: 在 tomcat-users.xml中, 我有以下内容: 同样在 Maven / conf / settings.xml中, 我有: 当我试图去 并输入用户名和密码(管理员admin)我有错误: 但是我输入了 tomcat-users.xml ,该用户admin具有manager-gui角色。我正在使用To

  • 问题内容: 我在自学Python网络,回想起我在自学线程时,碰到了该页面,所以我复制了脚本,将其更新为Python 3.1.1并运行了它们。他们工作得很好。 然后,我做了一些修改。我的目标是做一些简单的事情: 客户端腌制一个整数并将其发送到服务器。 服务器接收腌制的整数,对其进行腌制,将其加倍,然后腌制并将其发送回客户端。 客户端接收腌制(并加倍)的整数,对其进行腌制并输出。 这是服务器: 这是客

  • 问题内容: 我正在做一个Python项目,我必须从数据库中查找和检索数据。 我尝试过创建一个类,在其中声明连接并进行查询,这是到目前为止我所没有的。 因此,主要问题是该变量和不能从同一类的其他def /函数中调用。我想要得到的是一个精细的查询,在这里我可以进行查询并检索其内容。这将总结我的代码,因此我应该这样做。 问题答案: 我通常使用psycopg2 / postgres,但这是我经常使用的基本

  • 问题内容: 我正在尝试验证目标是否公开了https Web服务。我有通过HTTP连接的代码,但不确定如何通过HTTPS连接。我已经阅读过您使用SSL,但我也阅读过它不支持证书错误。我得到的代码来自python docs: 有谁知道如何连接到HTTPS? 我已经尝试过HTTPSConenction,但是它以错误代码响应,声称httplib没有属性HTTPSConnection。我也没有socket.