Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 无法获取HTTPS URL(请求包)_Python_Python 3.x_Https_Web Scraping_Python Requests - Fatal编程技术网

Python 无法获取HTTPS URL(请求包)

Python 无法获取HTTPS URL(请求包),python,python-3.x,https,web-scraping,python-requests,Python,Python 3.x,Https,Web Scraping,Python Requests,当我尝试遵循此处的指南时:我的脚本失败: import requests res = requests.get('https://automatetheboringstuff.com/files/rj.txt') type(res) res.raise_for_status() 请求已安装 经过很长时间的等待后,我收到了以下错误消息,这些消息仅在使用HTTPS URL时出现;使用Python 3.6.3 64位和Python 3.6.4 64位的两台Windows 10 64位计算机上也会发

当我尝试遵循此处的指南时:我的脚本失败:

import requests

res = requests.get('https://automatetheboringstuff.com/files/rj.txt')
type(res)
res.raise_for_status()
请求已安装

经过很长时间的等待后,我收到了以下错误消息,这些消息仅在使用HTTPS URL时出现;使用Python 3.6.3 64位和Python 3.6.4 64位的两台Windows 10 64位计算机上也会发生同样的情况:

"C:\Program Files\Python36\python.exe" "C:/Users/user.name/Google Drive/Automation/RoHSWebScraper/main.py"
Traceback (most recent call last):
  File "C:\Program Files\Python36\lib\site-packages\urllib3\contrib\pyopenssl.py", line 441, in wrap_socket
    cnx.do_handshake()
  File "C:\Program Files\Python36\lib\site-packages\OpenSSL\SSL.py", line 1716, in do_handshake
    self._raise_ssl_error(self._ssl, result)
  File "C:\Program Files\Python36\lib\site-packages\OpenSSL\SSL.py", line 1449, in _raise_ssl_error
    raise SysCallError(-1, "Unexpected EOF")
OpenSSL.SSL.SysCallError: (-1, 'Unexpected EOF')

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Program Files\Python36\lib\site-packages\urllib3\connectionpool.py", line 601, in urlopen
    chunked=chunked)
  File "C:\Program Files\Python36\lib\site-packages\urllib3\connectionpool.py", line 346, in _make_request
    self._validate_conn(conn)
  File "C:\Program Files\Python36\lib\site-packages\urllib3\connectionpool.py", line 850, in _validate_conn
    conn.connect()
  File "C:\Program Files\Python36\lib\site-packages\urllib3\connection.py", line 326, in connect
    ssl_context=context)
  File "C:\Program Files\Python36\lib\site-packages\urllib3\util\ssl_.py", line 329, in ssl_wrap_socket
    return context.wrap_socket(sock, server_hostname=server_hostname)
  File "C:\Program Files\Python36\lib\site-packages\urllib3\contrib\pyopenssl.py", line 448, in wrap_socket
    raise ssl.SSLError('bad handshake: %r' % e)
ssl.SSLError: ("bad handshake: SysCallError(-1, 'Unexpected EOF')",)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Program Files\Python36\lib\site-packages\requests\adapters.py", line 440, in send
    timeout=timeout
  File "C:\Program Files\Python36\lib\site-packages\urllib3\connectionpool.py", line 639, in urlopen
    _stacktrace=sys.exc_info()[2])
  File "C:\Program Files\Python36\lib\site-packages\urllib3\util\retry.py", line 388, in increment
    raise MaxRetryError(_pool, url, error or ResponseError(cause))
urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='automatetheboringstuff.com', port=443): Max retries exceeded with url: /files/rj.txt (Caused by SSLError(SSLError("bad handshake: SysCallError(-1, 'Unexpected EOF')",),))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:/Users/user.name/Google Drive/Automation/RoHSWebScraper/main.py", line 3, in <module>
    res = requests.get('https://automatetheboringstuff.com/files/rj.txt', verify=False)
  File "C:\Program Files\Python36\lib\site-packages\requests\api.py", line 72, in get
    return request('get', url, params=params, **kwargs)
  File "C:\Program Files\Python36\lib\site-packages\requests\api.py", line 58, in request
    return session.request(method=method, url=url, **kwargs)
  File "C:\Program Files\Python36\lib\site-packages\requests\sessions.py", line 508, in request
    resp = self.send(prep, **send_kwargs)
  File "C:\Program Files\Python36\lib\site-packages\requests\sessions.py", line 618, in send
    r = adapter.send(request, **kwargs)
  File "C:\Program Files\Python36\lib\site-packages\requests\adapters.py", line 506, in send
    raise SSLError(e, request=request)
requests.exceptions.SSLError: HTTPSConnectionPool(host='automatetheboringstuff.com', port=443): Max retries exceeded with url: /files/rj.txt (Caused by SSLError(SSLError("bad handshake: SysCallError(-1, 'Unexpected EOF')",),))

Process finished with exit code 1
“C:\Program Files\Python36\python.exe”“C:/Users/user.name/Google Drive/Automation/RoHSWebScraper/main.py”
回溯(最近一次呼叫最后一次):
文件“C:\Program Files\Python36\lib\site packages\urllib3\contrib\pyopenssl.py”,第441行,在wrap\u套接字中
cnx.do_握手()
文件“C:\Program Files\Python36\lib\site packages\OpenSSL\SSL.py”,第1716行,在do_握手中
self.\u raise\u ssl\u错误(self.\u ssl,结果)
文件“C:\Program Files\Python36\lib\site packages\OpenSSL\SSL.py”,第1449行,出现错误
引发系统调用错误(-1,“意外EOF”)
OpenSSL.SSL.syscaller错误:(-1,“意外的EOF”)
在处理上述异常期间,发生了另一个异常:
回溯(最近一次呼叫最后一次):
文件“C:\Program Files\Python36\lib\site packages\urllib3\connectionpool.py”,第601行,在urlopen中
分块=分块)
文件“C:\Program Files\Python36\lib\site packages\urllib3\connectionpool.py”,第346行,在请求中
自我验证连接(连接)
文件“C:\Program Files\Python36\lib\site packages\urllib3\connectionpool.py”,第850行,在\u validate\u conn
连接
文件“C:\Program Files\Python36\lib\site packages\urllib3\connection.py”,第326行,在connect中
ssl(上下文=上下文)
文件“C:\Program Files\Python36\lib\site packages\urllib3\util\ssl\uuuu.py”,第329行,在ssl\u wrap\u套接字中
返回context.wrap\u套接字(sock,server\u hostname=server\u hostname)
文件“C:\Program Files\Python36\lib\site packages\urllib3\contrib\pyopenssl.py”,第448行,在wrap\u套接字中
raise ssl.SSLError('握手错误:%r“%e”)
ssl.SSLError:(“握手错误:SysCallError(-1,'意外EOF'),)
在处理上述异常期间,发生了另一个异常:
回溯(最近一次呼叫最后一次):
文件“C:\Program Files\Python36\lib\site packages\requests\adapters.py”,第440行,发送
超时=超时
文件“C:\Program Files\Python36\lib\site packages\urllib3\connectionpool.py”,第639行,在urlopen中
_stacktrace=sys.exc_info()[2])
文件“C:\Program Files\Python36\lib\site packages\urllib3\util\retry.py”,第388行,增量
引发MaxRetryError(_池、url、错误或响应错误(原因))
urllib3.exceptions.MaxRetryError:HTTPSConnectionPool(host='automatetheboringstuff.com',port=443):url:/files/rj.txt超过了最大重试次数(由SSLError(SSLError(“错误握手:SysCallError(-1,'意外EOF'),)引起)
在处理上述异常期间,发生了另一个异常:
回溯(最近一次呼叫最后一次):
文件“C:/Users/user.name/Google Drive/Automation/RoHSWebScraper/main.py”,第3行,在
res=requests.get('https://automatetheboringstuff.com/files/rj.txt,verify=False)
get中第72行的文件“C:\Program Files\Python36\lib\site packages\requests\api.py”
返回请求('get',url,params=params,**kwargs)
文件“C:\Program Files\Python36\lib\site packages\requests\api.py”,第58行,在请求中
return session.request(method=method,url=url,**kwargs)
文件“C:\Program Files\Python36\lib\site packages\requests\sessions.py”,第508行,在请求中
resp=自我发送(准备,**发送)
文件“C:\Program Files\Python36\lib\site packages\requests\sessions.py”,第618行,在send中
r=适配器.send(请求,**kwargs)
文件“C:\Program Files\Python36\lib\site packages\requests\adapters.py”,第506行,在send中
raise SSLError(e,请求=请求)
requests.exceptions.SSLError:HTTPSConnectionPool(host='automatetheboringstuff.com',port=443):url:/files/rj.txt超过最大重试次数(由SSLError引起(SSLError(“错误握手:SysCallError(-1,'意外EOF'),),)
进程已完成,退出代码为1

有谁能帮我解决这个恼人的问题吗

您可以尝试
urllib

蟒蛇2:

import urllib
data = urllib.urlopen('https://automatetheboringstuff.com/files/rj.txt').read()
蟒蛇3:

import urllib.requests
data = urllib.requests.urlopen('https://automatetheboringstuff.com/files/rj.txt').read()

因此,我公司网络上的计算机正在使用代理服务器,这阻止了我的HTTP和HTTPS请求正确连接

我按照Lelouchzqy的答案来确定我的HTTP和HTTPS代理服务器是什么

然后,我按照罗兰·史密斯的回答告诉
请求
使用哪些代理


希望这将有助于在未来的人,如果他们有相同的问题

从这里开始就可以了。您是否配置了可能会干扰连接的代理?您需要配置代理吗?你能用浏览器获取该URL吗?嗨,据我所知,我没有配置任何类型的代理,我不需要手动配置。我能够在FireFox和Chrome中成功获取URL。这可能很愚蠢,但您是否尝试从非google驱动器目录运行代码?Ahmed_Rahat提供了指向的链接,但他们的答案已被删除。抱歉,我不知道如何调试代理问题:(至少你知道问题出在哪里。另外,如果你想让别人在评论中看到你的回复,最好像这样ping他们@LarsaSolidorI,我刚刚尝试过这个。回复需要很长时间,然后会给我同样的错误。)-(