栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

忽略Python(iterparse)中的编码错误?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

忽略Python(iterparse)中的编码错误?

你说:

导致该问题的字符是:

你怎么知道?您正在用什么来查看文字?

因此,您无法发布URL和API密钥;读取数据,将其写入文件(以二进制模式)并发布该怎么办?

当您在网络浏览器中打开该文件时,它将检测到什么编码?

至少要这样做

data.depre('utf8') # where data is what you get from ur.read()

这将产生一个异常,告诉您非UTF-8数据的字节偏移。

然后这样做:

print repr(data[offset-10:offset+60])

并向我们​​展示结果。

假设编码实际上是

cp1252
在解码lxml错误消息中的字节:

>>> guff = "xEAx76x65x73">>> from unipredata import name>>> [name(c) for c in guff.depre('1252')]['LATIN SMALL LETTER E WITH CIRCUMFLEX', 'LATIN SMALL LETTER V', 'LATIN SMALL LETTER E', 'LATIN SMALL LETTER S']>>>

那么,您是否看到e-circumflex

ves
,或,a-ring紧随其后
ves
,或a-ring紧随其后?

数据是否以XML声明开头

<?xml version="1.0" encoding="UTF-8"?>
?如果没有,它是从什么开始的?

猜测/确认编码的线索:文字是用哪种语言编写的?什么国家?

*根据提供的更多信息进行 *更新

根据您在错误附近显示的摘录,电影的标题为“ La science desrêves”(梦的科学)。

有趣的是,PHP如何在“ F *** ingÅmål”上作呕,但Python在法国梦中cho住。确定要执行相同的查询吗?

您应该已经告诉我们这是IMDB,因此您会早点得到答案。

解决方案: 在传递

data
lxml
解析器之前,请执行以下操作:

data = data.replace('encoding="UTF-8"', 'encoding="iso-8859-1"')

这是基于他们在网站上声明的编码,但这也可能是一个谎言。在这种情况下,请尝试

cp1252
。绝对 不是iso-8859-2



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/662226.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号