我在处理从不同网页(在不同站点上)获取的文本中的unicode
字符时遇到问题。我正在使用BeautifulSoup
。
问题是该错误并不总是可重现的。它有时可以在某些页面上使用,有时它会通过抛出来发声UnicodeEncodeError
。我已经尝试了几乎所有我能想到的东西,但是我没有发现任何能正常工作而不抛出某种与Unicode
相关的错误的东西。
导致问题的代码部分之一如下所示:
agent_telno = agent.find('div', 'agent_contact_number')
agent_telno = '' if agent_telno is None else agent_telno.contents[0]
p.agent_info = str(agent_contact + ' ' + agent_telno).strip()
这是运行上述代码段时在某些字符串上生成的堆栈跟踪:
Traceback (most recent call last):
File "foobar.py", line 792, in <module>
p.agent_info = str(agent_contact + ' ' + agent_telno).strip()
UnicodeEncodeError: 'ascii' codec can't encode character u'\xa0' in position 20: ordinal not in range(128)
我怀疑这是因为某些页面(或更具体地说,来自某些站点的页面)可能已编码,而其他页面可能未编码。所有站点都位于英国,并提供供英国消费的数据-因此,与英语以外的其他任何形式的内部化或文字处理都没有问题。
是否有人对如何解决此问题有任何想法,以便我可以始终如一地解决此问题?
基本上,停止使用str
从Unicode
转换为编码的文本/
字节。
相反,请正确使用.encode()
编码字符串:
p.agent_info = u' '.join((agent_contact, agent_telno)).encode('utf-8').strip()
我目前正在使用Django countries为表单字段获取ISO国家名称列表。它在我的网站上显示时没有错误,但在Django的管理网站上,由于存在非ASCII国家名称,它会导致上述错误: Unicode错误提示:无法编码/解码的字符串是:itan 我已经读到类似的问题可以通过属性来解决,但是如果不接触Django Admin本身,这似乎不是很可行。如果有人能解决这个问题,我将不胜感激。 Mode
问题内容: 我想解析我的XML文档。所以我将我的XML文档存储如下 现在我的下面是我的代码 我低于错误 问题答案: 看来您要达到UTF-8字节顺序标记(BOM)。尝试使用此Unicode字符串并提取出BOM: 我使用而不是因为在您的情况下您可能多次出现BOM表,这可能是由于串联的文件内容引起的。
当我测试从twitter上的数据挖掘时,我有一个麻烦,我通过Word搜索数据。 It错误 为什么会有这样的问题?
我得到了Unicodeer错误: “ascii”编解码器无法对73-74位置的字符进行编码:序号不在范围内(128) python3 defult编码不是“UTF-8”吗?? 当我运行这个脚本时 实际上是蟒蛇。5.2 当我打印身体的类型,它是str 但是错误似乎是asciicode而不是python2的Unicode thx
问题内容: 我只是尝试解码类似\ uXXXX \ uXXXX \ uXXXX的字符串。但我得到一个错误: 我是Python新手。怎么了 谢谢! 问题答案: Python试图提供帮助。您 无法解码 Unicode数据,因为它已经被解码。因此,Python首先将对数据 进行编码 (使用ASCII编解码器)以获取要解码的字节。正是这种隐式编码失败。 如果您具有Unicode数据,则仅将其 编码 为UTF
问题内容: 我已经从[python网站] [1]复制了此脚本,这是另一个问题,但是现在编码存在问题: 这次编码问题,当我运行它时,出现了这个错误: 然后我将所有整数都转换为字符串,但是这次我得到了这个错误: 我已经在上面实现了处理Unicode字符的方法,但是它给了我这种错误。有什么问题以及如何解决? 问题答案: 然后我将所有整数都转换为字符串, 您将整数 和 字符串都转换为 字节字符串 。对于字