【发布时间】:2026-02-05 17:30:01
【问题描述】:
我使用BeautifulSoup 从网页中抓取数据。为了测试,我将所有内容输出到控制台。那里一切正常。现在我想将数据写入文件,但一段时间后出现以下错误:
UnicodeEncodeError: 'latin-1' codec can't encode character '\u0107' in 位置 57:序数不在范围内(256)
问题似乎是这封信:ć
我使用此代码写入文件:
with open('data.txt', 'a',encoding='iso-8859-1') as f:
f.write(text+'\n')
如果我将代码的编码更改为encoding='utf-8',异常就会消失,但是书面文件中的特殊字符看起来不对:Kuzmanović 应该是 Kuzmanović
【问题讨论】:
-
我想我的问题是我想保存数据的文件没有正确的编码。我用 utf-8 创建了新文件,现在它似乎可以工作了。当我确定时会报告。
-
如果您将文件保存为“utf-8”,那么您必须告诉打开该文件的工具使用 UTF-8,或者将其设置为默认使用 UTF-8,如果是这样的话可能。
标签: python encoding character-encoding web-scraping