Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.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中使用请求时出错_Python_Python 2.7_Python 3.x_Python Requests - Fatal编程技术网

握手错误:在python中使用请求时出错

握手错误:在python中使用请求时出错,python,python-2.7,python-3.x,python-requests,Python,Python 2.7,Python 3.x,Python Requests,在这里,iam使用请求模块从github下载api信息,代码如下所示 # Creation of Github request # Import requests import requests r = requests.get('https://api.github.com/user', auth=('user','pass')) print(r.status_code) print(r.headers['content-type']) print(r.encoding) print(r.

在这里,iam使用请求模块从github下载api信息,代码如下所示

# Creation of Github request

# Import requests
import requests

r = requests.get('https://api.github.com/user', auth=('user','pass'))
print(r.status_code)
print(r.headers['content-type'])
print(r.encoding)
print(r.text)
print(r.json())
使用此模块时出现错误

python github.py           
Traceback (most recent call last):
  File "github.py", line 6, in <module>
    r = requests.get('https://api.github.com/user', auth=('user','pass'))
  File "/home/ubuntu/.local/lib/python2.7/site-packages/requests/api.py", line 70, in get
    return request('get', url, params=params, **kwargs)
  File "/home/ubuntu/.local/lib/python2.7/site-packages/requests/api.py", line 56, in request
    return session.request(method=method, url=url, **kwargs)
  File "/home/ubuntu/.local/lib/python2.7/site-packages/requests/sessions.py", line 488, in request
    resp = self.send(prep, **send_kwargs)
  File "/home/ubuntu/.local/lib/python2.7/site-packages/requests/sessions.py", line 609, in send
    r = adapter.send(request, **kwargs)
  File "/home/ubuntu/.local/lib/python2.7/site-packages/requests/adapters.py", line 497, in send
    raise SSLError(e, request=request)
requests.exceptions.SSLError: ("bad handshake: Error([('SSL routines', 'ssl3_get_server_certificate', 'certificate verify failed')],)",)
试图使用github的设置选项卡中的访问令牌,但没有用

有什么帮助吗?请帮我解决这个问题

我的系统上还安装了请求模块

import requests

r = requests.get('https://api.github.com/user', auth=('user','pass'), verify=False)
print(r.status_code)
print(r.headers['content-type'])
print(r.encoding)
print(r.text)
print(r.json())
如果是这样的话,这也许行得通。。然后,您在验证从服务器发送的证书时遇到问题(因为您使用的是HTTPS)

有一个完整的 请求验证HTTPS请求的SSL证书,就像web浏览器一样。默认情况下,启用SSL验证,如果无法验证证书,请求将抛出SSLError:

请注意,您不应该禁用生产代码的TLS/SSL验证,而应该调查证书无效的原因,并遵循官方文档中的指南

人工验证 您始终可以从浏览器导出github证书,并将证书放置在与脚本相同的目录中。现在,这通常不需要,但作为一种测试。。这应该起作用:

r.get('https://api.github.com', verify='./github.crt')
同样,请确保已导出证书并将其作为
github.crt
放置在与脚本相同的目录中

如果是这样的话,这也许行得通。。然后,您在验证从服务器发送的证书时遇到问题(因为您使用的是HTTPS)

有一个完整的 请求验证HTTPS请求的SSL证书,就像web浏览器一样。默认情况下,启用SSL验证,如果无法验证证书,请求将抛出SSLError:

请注意,您不应该禁用生产代码的TLS/SSL验证,而应该调查证书无效的原因,并遵循官方文档中的指南

人工验证 您始终可以从浏览器导出github证书,并将证书放置在与脚本相同的目录中。现在,这通常不需要,但作为一种测试。。这应该起作用:

r.get('https://api.github.com', verify='./github.crt')

同样,请确保已导出证书,并将其作为
github.crt
放置在与脚本相同的目录中。

密码中是否有反斜杠(可能会很糟糕!)
证书验证失败
表示通过HTTPS(非HTTP)获取数据时,自签名或错误的证书。请尝试将url更改为http://
或修复证书。我刚刚注意到您正在使用
github.com
,中间是否有代理?看起来您的客户端无法验证服务器证书这可能是SNI问题,您可以尝试更新请求吗
pip安装-U请求[安全]
为什么不使用一个Github API客户端?密码中是否有反斜杠(可能会很倒霉!)
certificate verify failed
表示通过HTTPS(而非HTTP)获取数据时有自签名或错误的证书。请尝试将url更改为http://
或修复证书。我刚刚注意到您正在使用
github.com
,中间是否有代理?看起来您的客户端无法验证服务器证书这可能是SNI问题,您可以尝试更新请求吗
pip安装-U请求[security]
为什么不使用一个Github API客户端?