当前位置:首页 > python > 正文内容

python 爬虫 报错:UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0x8b in position”解决方案

zhangsir3年前 (2022-10-27)python443

发现报错“UnicodeDecodeError: 'utf-8' codec can't decode byte 0x8b in position 1:invalid start byte”,


方法一:


根据报错提示,错误原因有一条是这样的:

“'Accept-Encoding': 'gzip, deflate'”


网络上的解释是: 


这句话的意思是本地接收压缩格式的数据,服务器传过来压缩格式gzip的文件,而解压这种gzip文件只能用deflate算法,浏览器能够自动解压,程序却不能自动解压gzip。


总结:写爬虫程序时候还是不要写'Accept-Encoding': 'gzip, deflate'了,就让服务器传原始文件过来吧,不用压缩了。


方法二:


利用gzip进行解压缩。


python3 :

import gzip
import urllib.request
response_1 = urllib.request.urlopen('').read()
data=gzip.decompress(response_1).decode("utf-8")


zhangsir版权t6防采集https://mianka.xyz

扫描二维码推送至手机访问。

版权声明:本文由zhangsir or zhangmaam发布,如需转载请注明出处。

本文链接:https://www.mianka.xyz/post/52.html

标签: python爬虫
分享给朋友:

“python 爬虫 报错:UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0x8b in position”解决方案” 的相关文章

宝塔面板如何部署Django项目

宝塔面板如何部署Django项目

添加宝塔面板插件登录宝塔面板,进入软件商店,搜索“python项目管理器”然后点击安装进入python项目管理器,点击版本管理,安装版本(注:千万不要添加项目)然后添加网站,php不用所以选静态,添加好了,上传本地的源码。本地源码里没有requirements.txt文件,需要输入命令生成。命令如下...

python 写入文件

一、读写txt文件1、打开txt文件Note=open('x.txt',mode='w',encoding='utf-8')函数=open(x.扩展名,mode=模式)模式种类:w      ...

python 给电脑设置闹钟

python会自动触发windows桌面通知,提示重要事项,比如说:您已工作两小时,该休息了我们可以设定固定时间提示,比如隔10分钟、1小时等用到的第三方库:win10toast - 用于发送桌面通知的工具from win10toast import ToastNoti...

python 将json数据转成csv文件

从JSON数据转化CSV文件下面的这个Python脚本能够将JSON数据转化到CSV文件的表格当中去,我们输入的是带有.json后缀的文件,输出的是.csv后缀的表格文件,代码如下import json def converter(input_file, output...

python—pymysql的增删改查操作实例展示

Python使用pymysql连接数据库1.导包import pymysql2.连接数据库connection = pymysql.connect(     host='',  # ...

python selenium 使用代理ip

代码如下:from selenium import webdriver chromeOptions = webdriver.ChromeOptions() chromeOptions.add_argument("--proxy-serv...