当前位置: 首页 > article >正文

python之爬虫遇到返回内容乱码

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 解决思路


前言

提示:这里可以添加本文要记录的大概内容:

问题复现:

import requests

headers = {
    "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7",
    "Accept-Encoding": "gzip, deflate, br, zstd",
    "Accept-Language": "en-US,en;q=0.9,zh-CN;q=0.8,zh;q=0.7,en-GB;q=0.6",
    "cache-control": "max-age=0",
    "upgrade-insecure-requests": "1",
}

url = "xxxxxxxxxxxx"

res = requests.get(url=url, headers=headers, timeout=60)

print(res.text)

返回的结果:

��or����_�;��������蔶��p<�_0�+��?=0 ��
�c�M�zU�nT�%��Z7EU��UaT`XT��C��C�QT�C�QH��\3Q(d�U��+m�E1�]c^�b��R%�\y��w�DwՊW��Q�z��^S�*C!rUc*M��B��-rrb�Z�J��5�C�(Hm�E�<H`����"W
���\5*��fV0�W��A������b�\ըj���x��(=%�T�P�����2j_�%��=Zĉ��}��e�"t8>�v��Wb6��i�~'�T��w�@CE�](�I_ƄLȄ���"�aƞ�lJ�"�!��+��`��뿪9�џB�{��&��Dz��Qb���(��������_lFMz�J�F�K��u�η�σ��nMKl��%��q;5���W�ू8�	�a��w�	��������K�o?v�f l�"l��o�e��[~>p����ҏ������Y��ޱ{E�1}��h�t�'�$�S��KpL��:+|F���7 ~/莀N�80 �ׄ��p���4�Í$7��\L����Nahz���.m�Y�l{m�gA�����gl�
c�߷��Ϥ��x���AgA\4�R�Z*r1<3N�;�S�b�`��9��O�����}�_�!�q�@ �/���˔cWT��N����K�E��5-��7�����9�پo��g,Xe��߷�����-�lSe��}@~|��3!�oJkh���P��o����}���g,}~����ok�S|��6����S�r3$,����n��C'sBຼ�{Cs%�l��������!1�OM�&ɟ�����GEk,�:2U1�6��]��ʐu;��z��=ѫ��'�z�"���F�r����=v����y>52����Zu�lv�����rd��rȳ��B���t��U� �V�<�v>�aA`�2&:.��4|l�x�!�������*b�D�^RQ������
��|�ۙϚ�P�a�A�:�z\�GZoM�⋃��s#L��kf}.@�z�J�6�j� I{7���[��W�
��i�HShY�y�Œ<�l:��vN�n���EF�2��N��#��^��0�v{�=�I
�т<�m�&�\��j����


解决思路

“Accept-Encoding’是浏览器发给服务器,声明浏览器支持的编码类,一般有gzip,deflate,br 等等。很多网站都是以gzip的格式来输出页面,此时输出response.content和response.text时会自动解压,但是当以br格式压缩时,却不会自动解压

Brotli是一种由 Google开发的全新压缩算法,可以有效减小传输内容大小,加速分发效果。当客户端的请求携带请求头 Accept-Encoding: br 时,表示客户端希望获取对应资源时进行 Brotli 压缩。当服务端响应携带响应头 Content-Encoding: br 时,表示服务端响应的内容是 Brotli 压缩的资源。需要注意的是,只有在 HTTPS 的情况下,浏览器才会发送 br 这个 Accept-Encoding

解决办法:
直接从请求头的Accept-Encoding中去除编码类型br

Accept-Encoding = “gzip, deflate”


http://www.kler.cn/a/370099.html

相关文章:

  • ARM-V9 CCA/RME QEMU环境搭建
  • 大华大数据开发面试题及参考答案
  • 汽车钥匙发展史
  • 2025-1-21 Newstar CTF web week1 wp
  • 使用tritonserver完成clip-vit-large-patch14图像特征提取模型的工程化。
  • 网络安全(渗透)
  • 2024年10月28日练习(双指针算法)
  • 了解VGG网络并利用PyTorch实现VGG网络
  • 计算服务器:开启科学计算新变革的强大引擎
  • 论文 | PROMPTING GPT-3 TO BE RELIABLE
  • Vue.js 入门指南:从基础知识到核心功能
  • Git 标签管理
  • 安康旅游网站:SpringBoot设计与实现详解
  • .NET使用Moq开源模拟库简化单元测试
  • 数据分析-33-时间序列特征工程及feature-engine库的应用
  • 微信小程序 setData数据量过大的解决与分页加载的实现
  • 目标跟踪算法-卡尔曼滤波详解
  • 洗牌算法(Shuffle Algorithm)Fisher-Yates 洗牌算法详细解读
  • 【ChatGPT】如何通过反向思维改进Prompt的编写
  • GAN原理及代码实现
  • 51单片机完全学习——DS18B20温度传感器
  • 医院信息化与智能化系统(12)
  • 极狐GitLab 发布安全补丁版本17.5.1, 17.4.3, 17.3.6
  • TextHarmony:视觉文本理解与生成的新型多模态大模型
  • 唤醒车机时娱乐屏出现黑屏,卡顿的案例分享
  • 深度学习(五):语音处理领域的创新引擎(5/10)