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

目录

一、内容乱码

如果出现乱码,设置编码,编码格式跟网页源码当中 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)

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

相关推荐
福运常在1 小时前
股票数据API(19)次新股池数据
java·python·maven
多看书少吃饭1 小时前
Vue3 + Java + Python 打造企业级大模型知识库(含 SSE 流式对话完整源码)
java·python·状态模式
Z.风止1 小时前
Large Model-learning(2)
开发语言·笔记·python·leetcode
蓝天守卫者联盟11 小时前
玩具喷涂废气治理厂家:行业现状、技术路径与选型指南
大数据·运维·人工智能·python
m0_738120721 小时前
我的创作纪念日0328
java·网络·windows·python·web安全·php
red1giant_star1 小时前
浅析文件类漏洞原理与分类——含payload合集与检测与防护思路
python·安全
tryCbest1 小时前
Python之Flask开发框架(第一篇) — 从安装到第一个应用
开发语言·python·flask
zhangzeyuaaa1 小时前
Python getter/setter 正确用法详解
开发语言·python
源码之家2 小时前
计算机毕业设计:Python智慧交通大数据分析平台 Flask框架 requests爬虫 出行速度预测 拥堵预测(建议收藏)✅
大数据·hadoop·爬虫·python·数据分析·flask·课程设计
Shaoxi Zhang2 小时前
pm2运行项目实践记录(通过ecosystem.config.js配置并自动运行)
javascript·python·pycharm