相信很多小伙伴在用Python写爬虫或调用API时总会碰到“您与这个网站链接不安全”或“你的连线不是私人连线”,不管怎么修改header,问题都无法得到解决。今天将分享Python解决网络连接不安全的问题。
零基础学Python,选择凡亿教育
网络连接不安全,大多数原因是因为该网站采用了http协议却没有配置SSL证书或SSL证书过期导致。
导致网络连接不安全,归根于很多人在通过urllib的request.urlopen发送请求时,经常忽略参数context。
该参数context作用是用于描述各类SSL参数。如果给定了context参数,则必须是ssl.SSLContext实例。
解决方法如下:
1、打开HTTPSConnection相关文档;
若是在3.4.3版本以上,可通过将ssl._create_unverified_context()传递给context参数来实现非验证行为。
在3.4.3版更改,目前这个类在默认情况下将执行所有必要的证书和主机检查,要回复到先前的非验证行为,可将ssl._create_unverified_context()传递给context参数。
具体代码如下:
(引入SSL包,创建_create_unverified_contex()对象)
from urblib import request,parse
import ssl
import json
url = ""
context = ssl._create_unverified_context()
req = request.Request(url)
res = request.urlopen(req,context=context)
以上是关于网络连接不安全的解决方法,希望对用户有所帮助。