爬虫 — 内容乱码与证书不信任网站

目录

一、内容乱码

如果出现乱码,设置编码,编码格式跟网页源码当中 charset 的编码是一样的。

python 复制代码
# 需求:爬取表情包网站源码:https://qq.yh31.com/zjbq/2920180.html

# 导入模块
import requests

# 确定 url
url = 'https://qq.yh31.com/zjbq/2920180.html'

# 请求头
head = {
    'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.114 Safari/537.36'
}

# 开始请求
html = requests.get(url, headers=head)

# 出现乱码 去源码当中找 charset
html.encoding = 'utf-8'  # 如果源码中是 gbk,就写 gbk

# 打印数据
print(html.text) 

二、处理不信任的证书

SSL 证书 遵守了 SSL 协议,在应用层。是由信任的数字证书颁发机构验证身份之后颁发的证书,同时具有服务器身份验证和数据传输加密功能。

一般由专门的机构颁发的,也有的网站不希望别人爬取,会自己制作证书的,但是这种情况下,一般用户访问时需要手动安装证书。

python 复制代码
# 导入模块
import requests

# 确定 url
url = 'https://inv-veri.chinatax.gov.cn/'

# 请求头
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.114 Safari/537.36'
}

# 正常情况下,requests 发请求 ------ 会主动检测证书
# 发请求的时候,不检测这个 ssl 证书 verify=False
res = requests.get(url, headers=headers, verify=False)

# 设置编码
res.encoding = 'utf-8'

# 打印数据
print(res.text)

记录学习过程,欢迎讨论交流,尊重原创,转载请注明出处~

相关推荐
冷雨夜中漫步6 小时前
Python快速入门(6)——for/if/while语句
开发语言·经验分享·笔记·python
郝学胜-神的一滴6 小时前
深入解析Python字典的继承关系:从abc模块看设计之美
网络·数据结构·python·程序人生
百锦再6 小时前
Reactive编程入门:Project Reactor 深度指南
前端·javascript·python·react.js·django·前端框架·reactjs
喵手8 小时前
Python爬虫实战:旅游数据采集实战 - 携程&去哪儿酒店机票价格监控完整方案(附CSV导出 + SQLite持久化存储)!
爬虫·python·爬虫实战·零基础python爬虫教学·采集结果csv导出·旅游数据采集·携程/去哪儿酒店机票价格监控
2501_944934738 小时前
高职大数据技术专业,CDA和Python认证优先考哪个?
大数据·开发语言·python
helloworldandy8 小时前
使用Pandas进行数据分析:从数据清洗到可视化
jvm·数据库·python
肖永威9 小时前
macOS环境安装/卸载python实践笔记
笔记·python·macos
TechWJ10 小时前
PyPTO编程范式深度解读:让NPU开发像写Python一样简单
开发语言·python·cann·pypto
枷锁—sha10 小时前
【SRC】SQL注入WAF 绕过应对策略(二)
网络·数据库·python·sql·安全·网络安全
abluckyboy10 小时前
Java 实现求 n 的 n^n 次方的最后一位数字
java·python·算法