爬虫之ssh证书警告错误
程序员文章站
2022-03-20 20:27:45
爬虫之ssh证书警告错误 1.错误信息 2.分析 ssh证书是美国网景公司发放的一个安全认证证书,有了这个证书即可证明网站是安全的,但是认证是需要收费的, 所以一些网站就会自己仿造证书,这个时候浏览器就会给予警告,而我们爬虫就爬不到想要的信息 3.解决办法 方法一: 加上一个参数:verify=证书 ......
爬虫之ssh证书警告错误
1.错误信息
错误信息:equests.exceptions.sslerror: ("bad handshake: error([('ssl routines', 'tls_process_server_certificate', 'certificate verify failed')],)",)
2.分析
ssh证书是美国网景公司发放的一个安全认证证书,有了这个证书即可证明网站是安全的,但是认证是需要收费的,
所以一些网站就会自己仿造证书,这个时候浏览器就会给予警告,而我们爬虫就爬不到想要的信息
3.解决办法
-
方法一:
加上一个参数:verify=证书路径,或verify=false如:
import request url = 'xxxxx' req = requests.get(url,verify=false) print(req.text)
-
方法二:
ssl._create_default_https_context ``=
ssl._create_unverified_context``#注意用了这个就不能用requests了,得用urllib2.request
python2中
# 方法二(推荐): import ssl import urllib2 ssl._create_default_https_context =ssl._create_unverified_context req =urllib2.request('xxxx') data =urllib2.urlopen(req).read() print(data)
python3中
import ssl import urllib.request ssl._create_default_https_context =ssl._create_unverified_context data =urllib.request.urlopen('xxxx').read() print(data)