爬虫之ssh证书警告错误
爬虫之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)
![微信](https://www.cnblogs.com/images/cnblogs_com/bladecheng/1492360/o_weinxin.png)
![QQ](https://www.cnblogs.com/images/cnblogs_com/bladecheng/1492360/o_qrcode_1561712740560.jpg)
个性签名:独学而无友,则孤陋而寡闻!
如果觉得这篇文章对你有小小的帮助的话,记得点个“关注”哦,博主在此感谢!还可以扫码添加好友,交流编程上的问题哦!
万水千山总是情,点赞再走行不行!哈哈哈(っ•̀ω•́)っ✎⁾⁾!