爬虫Requests库ssl认证

2020-03-27  本文已影响0人  _Mirage

先谈谈: https和http

相同点:
它们都是通信协议.

不同点:

HTTP协议是一种使用明文数据传输的网络协议。一直以来HTTP协议都是最主流的网页协议,但是互联网发展到今天,HTTP协议的明文传输会让用户存在一个非常大的安全隐患。试想一下,假如你在一个HTTP协议的网站上面购物,你需要在页面上输入你的银行卡号和密码,然后你把数据提交到服务器实现购买。假如这个适合,你的传输数据被第三者给截获了,由于HTTP明文数据传输的原因,你的银行卡号和密码,将会被这个截获人所得到。现在你还敢在一个HTTP的网站上面购物吗?你还会在一个HTTP的网站上面留下你的个人信息吗? image.png
主要突出http协议的传输是明文数据传输. 而HTTPS协议可以理解为HTTP协议的升级,就是在HTTP的基础上增加了数据加密。在数据进行传输之前,对数据进行加密,然后再发送到服务器。这样,就算数据被第三者所截获,但是由于数据是加密的,所以你的个人信息让然是安全的。这就是HTTP和HTTPS的最大区别。 image.png

主要突出 https 像是http的升级版, 数据传输不再是明文的, 因此更安全.

当你使用Chrome浏览器访问一个HTTP网站的时候,你会发现浏览器会对该HTTP网站显示“不安全”的安全警告,提示用户当前所访问的网站可能会存在风险。 image.png

而ssl(安全套接层):
SSL由Netscape公司于1994年创建,它旨在通过Web创建安全的Internet通信。它是一种标准协议,用于加密浏览器和服务器之间的通信。它允许通过Internet安全轻松地传输账号密码、银行卡、手机号等私密信息。

SSL证书就是遵守SSL协议,由受信任的CA机构颁发的数字证书。使用SSL证书有许多好处:

· 保障服务器和浏览器之间的通信安全

· 验证网站的真实身份,区别于钓鱼欺诈网站

· 加密用户的敏感信息以确保安全

· 提高SEO搜索引擎排名

· 提升用户对网站的信任

· 有助于提高网站的在线销售业绩..

你可以发现: 从某种意义上说: HTTPS=HTTP+SSL, 如果想要建立HTTPS连接,则首先必须从受信任的证书颁发机构(CA)Gworg机构注册 SSL证书。安装SSL证书后,网站地址栏HTTP后面就会多一个“S”,还有绿色安全锁标志。


正文:

那有的网站没有ca证书或者证书不是标准大众认可的, 那我们用python爬虫爬取这些网站时会爬不到数据, 因为python认为操作不安全, 可能会报错或者提示警告.
分为以下几种情况:

1: 对有ca证书的安全网站进行不认证访问操作:python给警告: image.png
image.png 2: 对有ca证书的安全网站进行认证访问操作(也就是verify的默认值True), 没有任何问题昂. image.png

3: 对没有ca证书的不安全网站进行不认证访问操作(也就是verify手动设置为False), 这时候python会认为你不在乎安全性(或者说没那么强调安全性, 所以没有错误也没有警告) 这种网站你用google进入的时候会提示你不安全, 然后有个手动选择忽视安全性就可以进去了, 爬虫要进去只能把ssl设置false, 即 verify=False(默认True)

4: 对没有ca证书的不安全网站进行认证访问操作(也就是verify不变用默认值), 这时候会警告或者返回不到正确的数据, 要解决就只能用3.

上一篇下一篇

猜你喜欢

热点阅读