问题:python3 使用beautifulSoup时,出错UnicodeDecodeError: 'gbk' codec …….
想将html文件转为纯文本,用Python3调用beautifulSoup
超简单的代码一直出错,用于打开本地文件:
from bs4 import BeautifulSoupfile = open('index.html')soup = BeautifulSoup(file,'lxml')print (soup)
出现下面的错误
UnicodeDecodeError : ‘gbk’ codec can’t decode byte 0xff in position 0: illegal multibyte sequence
beautifulSoup不是自称可以解析各种编码格式的吗?为什么还会出现解析的问题???
搜了很多关于beautifulSoup的都没有解决,突然发现,如果把代码写成
from bs4 import BeautifulSoupfile = open('index.html')str1 = file.read() # 错误出在这一行!!!soup = BeautifulSoup(str1,'lxml')print (soup)
原来如此! 问题出在文件读取而非BeautifulSoup的解析上!!
好吧,查查为什么文件读取有问题,直接上正解,同样四行代码
from bs4 import BeautifulSoupfile = open('index.html','r',encoding='utf-16-le')soup = BeautifulSoup(file,'lxml')print (soup)
然后soup.get_text()得到标签中的文字
其它
如果文件中存在多种编码而且报错,可以采用下面这种方式忽略,没测试–
soup = BeautifulSoup(content.decode('utf-8','ignore'))
问题:python3 使用beautifulSoup时,出错UnicodeDecodeError: 'gbk' codec …….的更多相关文章
- Python读取文件时出现UnicodeDecodeError 'gbk' codec can't decode byte 0x80 in position x
Python在读取文件时 with open('article.txt') as f: # 打开新的文本 text_new = f.read() # 读取文本数据出现错误: UnicodeDecode ...
- Python读取文件时出现UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position xx: 解决方案
Python在读取文件时 with open('article.txt') as f: # 打开新的文本 text_new = f.read() # 读取文本数据 出现错误: UnicodeDecod ...
- 14 python读取文件时出现UnicodeDecodeError: 'gbk' codec can't decode byte 0xb7 in position 26: illegal multibyte sequence解决方法
>>> f = open("D:\\all.txt", "r")>>> f.read()Traceback (most re ...
- Django 运行Admin 页面时出现 UnicodeDecodeError: 'gbk' codec can't decode byte XXXX解决方法
具体报错信息 Traceback (most recent call last): File "D:\Anaconda3\lib\site-packages\django\core\hand ...
- 逆向使用 execjs时遇到 UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 28: illegal multibyte sequence
问题: 如下图所示 今天在维护以前的爬虫代码 发现有个网站一直爬取失败,我原以为是网站逆向的部分改了,搞了好久才发现是GBK的问题 接下来告诉大家解决方案 解决方案 如下图 在下图这个subbsubp ...
- python读取文件时提示"UnicodeDecodeError: 'gbk' codec can't decode
解决办法1. FILE_OBJECT= open('order.log','r', encoding='UTF-8') 解决办法2. FILE_OBJECT= open('order.log','rb ...
- python3读文件时报错UnicodeDecodeError: 'gbk' codec can't decode byte 0x9f in position 2: illegal multibyte sequence
- python 读取文件时报错UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 205: illegal multibyte sequence
python读取文件时提示"UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 205: illegal m ...
- Python中解码decode()与编码encode()与错误处理UnicodeDecodeError: 'gbk' codec can't decode byte 0xab
编码方法encoding() 描述 encode() 方法以指定的编码格式编码字符串,默认编码为 'utf-8'.将字符串由string类型变成bytes类型. 对应的解码方法:bytes decod ...
随机推荐
- em...刚打完一点cf。。 有点子感悟
首先,下笔一定要读清楚题目. 情况多考虑一下. 这几次的模拟赛,分类思想很重要,往往一大坨东西扔给你,你不去尝试分类的话就很难整理清楚.
- VS.NET(C#)--2.6_ASP.NET服务器控件层次结构
ASP.NET服务器控件层次结构 语法 <asp:ControlType Id="ControlID" Rubat="Server" Property=& ...
- 艾瑞克·弗洛姆 ( Erich Fromm )
艾瑞克·弗洛姆 ( Erich Fromm ) 来源 https://www.zhihu.com/question/22891103 ------------------------------ 作者 ...
- 基于【 SpringBoot】一 || QQ授权流程
一.准备工作 1.qq开放平台应用申请,获取APP ID和APP Key 2.qq开放平台配置回调地址 二.服务器端生成授权链接 1.请求地址 https://graph.qq.com/oauth2. ...
- mac os安装mtr
MTR是Linux平台上一款非常好用的网络诊断工具,集成了traceroute.ping.nslookup的功能,用于诊断网络状态非常有用 现使用的方法是下载pkg包手动安装 mtr的pkg下载地址 ...
- [LeetCode] 148. 排序链表 ☆☆☆(归并排序)
148.排序链表 描述 在 O(n log n) 时间复杂度和常数级空间复杂度下,对链表进行排序. 示例 1: 输入: 4->2->1->3输出: 1->2->3-> ...
- PE重装系统
PE重装系统 PE: 含义:全称 Windows Preinstall Environment,即Windows 预安装环境 作用: 是一个用于Windows安装准备的最小操作系统,其实就是一个简易版 ...
- [Jenkins][centos]1 持续集成 之 配置VNC,部署Jenkins
痛点:上一篇的AWS部署的VNC不知为啥挂了,死活连不上,因此改申请京东云做部署Jenkins 预计阅读时间:20分钟 更新软件,安装桌面 yum -y update yum -y groupinst ...
- java相关网址汇总2
分享几个高质量的技术博客和网站. 一.博客 0.酷壳 - COOLSHELL 博客地址是 https://coolshell.cn/. 这个博客的作者是技术圈基本无人不知的技术大牛,江湖人称耗子叔,网 ...
- leetcode-2-重复的DNA序列
所有 DNA 都由一系列缩写为 A,C,G 和 T 的核苷酸组成,例如:"ACGAATTCCG".在研究 DNA 时,识别 DNA 中的重复序列有时会对研究非常有帮助. 编写一个函 ...