用Python 抓取的UTF8网页无法decode('utf-8')

脚本在昨天之前一直运行的很好,但是昨天突然无法解析,求解为什么?... 脚本在昨天之前一直运行的很好,但是昨天突然无法解析,求解为什么? 展开
 我来答
againinput4
2013-02-18 · TA获得超过2407个赞
知道大有可为答主
回答量:1446
采纳率:70%
帮助的人:644万
展开全部
估计就是个别字符有问题,即
本来标称utf-8,但是实际上个别字符不是utf-8,比如是gb2312
结果导致错误。
常见的解决办法是,添加ignore参数,比如:
decodedUnicodeHtml = yourHtml.decode("UTF-8", 'ignore')
就可以正常解码了。

更多相关内容可参考:
【总结】Python 2.x中常见字符编码和解码方面的错误及其解决办法

(此处没法发布地址,请自己google搜帖子标题,即可找到帖子地址)
yang_bigarm
推荐于2016-05-09 · TA获得超过3949个赞
知道大有可为答主
回答量:1664
采纳率:100%
帮助的人:624万
展开全部
不同的网页编码不一样,你今天抓的网页和昨天不一样啊。
编码是很麻烦的问题,你要针对各种网页写不同的解码和解析策略。
追问
问题是,我仔细查看对方的源码,如我贴图所示,是UTF-8啊
追答
错误提示 92229-92230 这个地方可能出现了不兼容的编码,一般有2种办法:
1 你用decode的时候,需要开启ignore模式,遇到个别不兼容的编码可以过滤掉。
2 下载一个 iconv, 需要转码的使用用python调用这个iconv来转码,同样要开启escape模式,跳过不兼容的字符。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
keven1006
2013-02-08 · TA获得超过684个赞
知道小有建树答主
回答量:820
采纳率:66%
帮助的人:374万
展开全部
人家换了编码了吧。你邮件看看网页上面的编码是多少改一下你的程序就好了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式