python请求中获取(';连接中止。';,OSError(0,';错误';)错误
我正在尝试编写登录网站的代码。python请求中获取(';连接中止。';,OSError(0,';错误';)错误,python,python-requests,urllib,Python,Python Requests,Urllib,我正在尝试编写登录网站的代码。 首先,我测试了使用。它工作得很好 因此,我编写了如下python代码: import requests url = 'https://www.bible.ac.kr/login.aspx/' headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko', 'Referer': 'http://www.bible.
首先,我测试了使用。它工作得很好 因此,我编写了如下python代码:
import requests
url = 'https://www.bible.ac.kr/login.aspx/'
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko',
'Referer': 'http://www.bible.ac.kr/'
}
req = requests.get(url, headers=headers) # OR requests.get(url, headers=headers, verify=False)
print(req.status_code)
但我有错误
错误
Traceback (most recent call last):
File "/Users/kyungmin/PycharmProjects/untitled14/venv/lib/python3.7/site-packages/urllib3/connectionpool.py", line 603, in urlopen
chunked=chunked)
File "/Users/kyungmin/PycharmProjects/untitled14/venv/lib/python3.7/site-packages/urllib3/connectionpool.py", line 344, in _make_request
self._validate_conn(conn)
File "/Users/kyungmin/PycharmProjects/untitled14/venv/lib/python3.7/site-packages/urllib3/connectionpool.py", line 843, in _validate_conn
conn.connect()
File "/Users/kyungmin/PycharmProjects/untitled14/venv/lib/python3.7/site-packages/urllib3/connection.py", line 370, in connect
ssl_context=context)
File "/Users/kyungmin/PycharmProjects/untitled14/venv/lib/python3.7/site-packages/urllib3/util/ssl_.py", line 355, in ssl_wrap_socket
return context.wrap_socket(sock, server_hostname=server_hostname)
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/ssl.py", line 412, in wrap_socket
session=session
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/ssl.py", line 853, in _create
self.do_handshake()
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/ssl.py", line 1117, in do_handshake
self._sslobj.do_handshake()
OSError: [Errno 0] Error
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/Users/kyungmin/PycharmProjects/untitled14/venv/lib/python3.7/site-packages/requests/adapters.py", line 449, in send
timeout=timeout
File "/Users/kyungmin/PycharmProjects/untitled14/venv/lib/python3.7/site-packages/urllib3/connectionpool.py", line 641, in urlopen
_stacktrace=sys.exc_info()[2])
File "/Users/kyungmin/PycharmProjects/untitled14/venv/lib/python3.7/site-packages/urllib3/util/retry.py", line 368, in increment
raise six.reraise(type(error), error, _stacktrace)
File "/Users/kyungmin/PycharmProjects/untitled14/venv/lib/python3.7/site-packages/urllib3/packages/six.py", line 685, in reraise
raise value.with_traceback(tb)
File "/Users/kyungmin/PycharmProjects/untitled14/venv/lib/python3.7/site-packages/urllib3/connectionpool.py", line 603, in urlopen
chunked=chunked)
File "/Users/kyungmin/PycharmProjects/untitled14/venv/lib/python3.7/site-packages/urllib3/connectionpool.py", line 344, in _make_request
self._validate_conn(conn)
File "/Users/kyungmin/PycharmProjects/untitled14/venv/lib/python3.7/site-packages/urllib3/connectionpool.py", line 843, in _validate_conn
conn.connect()
File "/Users/kyungmin/PycharmProjects/untitled14/venv/lib/python3.7/site-packages/urllib3/connection.py", line 370, in connect
ssl_context=context)
File "/Users/kyungmin/PycharmProjects/untitled14/venv/lib/python3.7/site-packages/urllib3/util/ssl_.py", line 355, in ssl_wrap_socket
return context.wrap_socket(sock, server_hostname=server_hostname)
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/ssl.py", line 412, in wrap_socket
session=session
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/ssl.py", line 853, in _create
self.do_handshake()
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/ssl.py", line 1117, in do_handshake
self._sslobj.do_handshake()
urllib3.exceptions.ProtocolError: ('Connection aborted.', OSError(0, 'Error'))
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/Users/kyungmin/PycharmProjects/untitled14/a.py", line 11, in <module>
req = requests.get(url, headers=headers)
File "/Users/kyungmin/PycharmProjects/untitled14/venv/lib/python3.7/site-packages/requests/api.py", line 75, in get
return request('get', url, params=params, **kwargs)
File "/Users/kyungmin/PycharmProjects/untitled14/venv/lib/python3.7/site-packages/requests/api.py", line 60, in request
return session.request(method=method, url=url, **kwargs)
File "/Users/kyungmin/PycharmProjects/untitled14/venv/lib/python3.7/site-packages/requests/sessions.py", line 533, in request
resp = self.send(prep, **send_kwargs)
File "/Users/kyungmin/PycharmProjects/untitled14/venv/lib/python3.7/site-packages/requests/sessions.py", line 646, in send
r = adapter.send(request, **kwargs)
File "/Users/kyungmin/PycharmProjects/untitled14/venv/lib/python3.7/site-packages/requests/adapters.py", line 498, in send
raise ConnectionError(err, request=request)
requests.exceptions.ConnectionError: ('Connection aborted.', OSError(0, 'Error'))
Process finished with exit code 1
回溯(最近一次呼叫最后一次):
文件“/Users/kyungmin/PycharmProjects/untitled14/venv/lib/python3.7/site packages/urllib3/connectionpool.py”,urlopen中第603行
分块=分块)
文件“/Users/kyungmin/PycharmProjects/untitled14/venv/lib/python3.7/site packages/urllib3/connectionpool.py”,第344行,在请求中
自我验证连接(连接)
文件“/Users/kyungmin/PycharmProjects/untitled14/venv/lib/python3.7/site packages/urllib3/connectionpool.py”,第843行,在“验证”连接中
连接
文件“/Users/kyungmin/PycharmProjects/untitled14/venv/lib/python3.7/site packages/urllib3/connection.py”,第370行,在connect中
ssl(上下文=上下文)
文件“/Users/kyungmin/PycharmProjects/untitled14/venv/lib/python3.7/site packages/urllib3/util/ssl_uu.py”,第355行,在ssl_u包装_u套接字中
返回context.wrap\u套接字(sock,server\u hostname=server\u hostname)
wrap_socket中的文件“/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/ssl.py”,第412行
会话=会话
文件“/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/ssl.py”,第853行,在
self.do_握手
文件“/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/ssl.py”,第1117行,在do_握手中
赛尔夫:握手
操作错误:[错误号0]错误
在处理上述异常期间,发生了另一个异常:
回溯(最近一次呼叫最后一次):
文件“/Users/kyungmin/PycharmProjects/untitled14/venv/lib/python3.7/site packages/requests/adapters.py”,第449行,在send中
超时=超时
文件“/Users/kyungmin/PycharmProjects/untitled14/venv/lib/python3.7/site packages/urllib3/connectionpool.py”,urlopen中第641行
_stacktrace=sys.exc_info()[2])
文件“/Users/kyungmin/PycharmProjects/untitled14/venv/lib/python3.7/site packages/urllib3/util/retry.py”,第368行,增量
升起六个。重新升起(类型(错误),错误,_stacktrace)
文件“/Users/kyungmin/PycharmProjects/untitled14/venv/lib/python3.7/site-packages/urllib3/packages/six.py”,第685行,重新登录
通过_回溯(tb)提升值
文件“/Users/kyungmin/PycharmProjects/untitled14/venv/lib/python3.7/site packages/urllib3/connectionpool.py”,urlopen中第603行
分块=分块)
文件“/Users/kyungmin/PycharmProjects/untitled14/venv/lib/python3.7/site packages/urllib3/connectionpool.py”,第344行,在请求中
自我验证连接(连接)
文件“/Users/kyungmin/PycharmProjects/untitled14/venv/lib/python3.7/site packages/urllib3/connectionpool.py”,第843行,在“验证”连接中
连接
文件“/Users/kyungmin/PycharmProjects/untitled14/venv/lib/python3.7/site packages/urllib3/connection.py”,第370行,在connect中
ssl(上下文=上下文)
文件“/Users/kyungmin/PycharmProjects/untitled14/venv/lib/python3.7/site packages/urllib3/util/ssl_uu.py”,第355行,在ssl_u包装_u套接字中
返回context.wrap\u套接字(sock,server\u hostname=server\u hostname)
wrap_socket中的文件“/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/ssl.py”,第412行
会话=会话
文件“/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/ssl.py”,第853行,在
self.do_握手
文件“/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/ssl.py”,第1117行,在do_握手中
赛尔夫:握手
urllib3.exceptions.ProtocolError:(“连接已中止”,OSError(0,“错误”))
在处理上述异常期间,发生了另一个异常:
回溯(最近一次呼叫最后一次):
文件“/Users/kyungmin/PycharmProjects/untitled14/a.py”,第11行,在
req=requests.get(url,headers=headers)
文件“/Users/kyungmin/PycharmProjects/untitled14/venv/lib/python3.7/site packages/requests/api.py”,get中第75行
返回请求('get',url,params=params,**kwargs)
文件“/Users/kyungmin/PycharmProjects/untitled14/venv/lib/python3.7/site packages/requests/api.py”,请求中的第60行
return session.request(method=method,url=url,**kwargs)
文件“/Users/kyungmin/PycharmProjects/untitled14/venv/lib/python3.7/site packages/requests/sessions.py”,请求中第533行
resp=自我发送(准备,**发送)
文件“/Users/kyungmin/PycharmProjects/untitled14/venv/lib/python3.7/site packages/requests/sessions.py”,第646行,在send中
r=适配器.send(请求,**kwargs)
文件“/Users/kyungmin/PycharmProjects/untitled14/venv/lib/python3.7/site packages/requests/adapters.py”,第498行,在send中
raise CONNECTIONERR(错误,请求=请求)
requests.exceptions.ConnectionError:(“连接已中止”,OSError(0,“错误”))
进程已完成,退出代码为1
我很久没有解决这个问题了。只有当我运行时,代码才能正常工作。我不知道原因。
即使我尝试使用C语言,我仍然在这个网站上遇到了一个错误。
您能否仅使用Python解决此问题?您是否尝试过使用try/except
while statuscode != 200:
response = 0
try:
response = requests.get(url, params, timeout=7)
except (
requests.ConnectionError,
requests.exceptions.ReadTimeout,
requests.exceptions.Timeout,
requests.exceptions.ConnectTimeout,
) as e:
statuscode = 0
print(e)
if response:
statuscode = response.status_code
有趣的是,我发现只有在回复为200时才输入“if response”——我不知道为什么,但我不是在抱怨,哈哈 我使用OPENSSL
1.0.1f
解决了这个问题
域仅支持TLS 1.0、SSLv2和SSLv3。这些协议已经过时,很少使用。所以我怀疑OPENSSL1.1.1
系列的兼容性。因此,使用openssl版本1.0.1f
解决了这个问题。但是,在Python中使用较旧的openssl可能需要额外的工作
我的英语不是很好,但我希望这能有所帮助。我也面临着同样的问题,在mac os中安装了自制的python3.7。看起来url不起作用。@kyungmin-这还相关吗?我得到的
请求的URL/login.aspx在此服务器上找不到。
尝试时