爬虫3 htts请求问题

  https, 是:http + SSL。 而SSL用来给http请求和响应数据加密,用户想要打开浏览数据,必须有该网站的证书(CA证书对应的秘钥),才能解读。

  爬取: 爬虫如果碰到需要证书才能解读的请求,就需要跳过证书验证。使用ssl库中的_create_unverified_context()模块来忽略证书

"""爬取https请求,忽略CA证书
   注: 现在部分网站不用做忽略,也可以爬取到https响应
"""
from urllib.request import Request, urlopen
from fake_useragent import UserAgent
import ssl


url = "https://www.12306.cn/index/"
headers = {
    'User-Agent': UserAgent().chrome
}
request = Request(url, headers=headers)
# 忽略证书验证
context = ssl._create_unverified_context()
response = urlopen(request, context=context)
info = response.read()
print(info.decode())

 

posted @ 2020-04-28 11:37  黑无常  阅读(140)  评论(0)    收藏  举报