忽略SSL证书验证
1.使用urllib爬取百度搜索html2.urllib.request.Request对象封装请求3.urllib发送get请求_中文传参问题4.urllib发送post请求获取html源代码5.获取动态页面html
6.忽略SSL证书验证
7.使用fake-useragent库伪装请求头8.urllib自定义opener对象设置代理IP9.爬虫cookie的使用10.保存与读取cookie11.使用urllib.error进行请求异常处理12.使用requests库发送get和post请求13.使用Request伪装User-Agent和IP地址14.requests设置超时时间/requests.Session自动保存cookie/verify忽略ssl证书15.re模块的正则表达式规则16.使用re的正则表达式提取腾讯体育新闻摘要17.BeautifulSoup4解析数据18.bs4.find_all()搜索文档树和css选择器提取解析后的html数据19.bs4解析并提取人民网新闻标题数据20.xpath解析数据21.谷歌浏览器的xpath插件安装22.使用re和lxml的xpath功能提取纵横中文网小说推荐榜前3页标题23.JSON数据24.使用jsonpath快速提取json的数据25.提取猫眼电影正在热映电影以及评分26.单线程与多线程爬虫HTTP&HTTPS
HTTPS为安全超文本传输协议,是HTTP的安全版本,它在HTTP和TCP/IP之间增加了一个SSL/TSL层(安全套接层/传输层协议),用于加密HTTP的通信内容。
SSL证书
一种数字证书,用于在SSL/TLS协议中验证服务器的身份,并启用加密通信。是HTTPS通信中身份验证的关键,当浏览器尝试通过HTTPS连接到服务器时,服务器会提供SSL证书。浏览器会检查证书是否受信任的CA签发,并验证证书的有效性。如果证书验证成功,浏览器会信任服务器,并建立加密连接。如果SSL证书验证不通过,或者操作系统不信任服务器的安全证书,会警告用户证书不受信任。拥有有效的SSL证书是网站安全性的标志之一。
在python的urllib标准库中,urlopen函数可以接受一个可选的context参数,这个参数允许指定一个SSL上下文(SSLContext),用于控制HTTPS连接的安全行为。这个上下文可以用来配置SSL证书验证的行为,例如忽略SSL验证或指定CA证书。
urllib.request.urlopen(url, data=None, [timeout, ]*, cafile=None, capath=None, cadefault=False, context=None)
# python自带的SSL标准库,使用OpenSSL库作为底层实现
import ssl
from urllib.request import urlopen
# 创建一个不进行证书验证的SSL上下文
context = ssl.create_default_context()
context.check_hostname = False # 关闭对主机名的检查
context.verify_mode = ssl.CERT_NONE # 设置了上下文的验证模式为不进行证书验证
# 发送请求并读取响应内容
url = 'http://httpbin.org/get'
resp = urlopen(url, context=context)
详见官网:
https://docs.python.org/3.12/library/urllib.request.html#urllib.request.urlopen
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 【杂谈】分布式事务——高大上的无用知识?