用它们的正常形式替换“\xf3”和“\xe9”
replacing "\xf3" and "\xe9" with their normal forms
我正在从一个网站上抓取数据,该网站有一些非英文字母,例如 Vitória,这完全弄乱了我的数据因为输出是 Vit\xf3ria.
如何替换 \xf3 和其他类似的?
ps:
text.replace('\xf3', '')
不起作用。如果可能的话,我希望以 csv 格式显示和保存 ó 或此类字母。
在Python 3:
>>> bytes('Vit\xf3ria', 'unicode-escape').decode('unicode-escape')
'Vitória'
感谢评论中的所有帮助,我找到了答案:
学分:
@SIM、@match、@t.m.adam 和@dax
开始了。
text.encode('utf-8').strip()
感谢大家。
代码原样:
...
for cell2n3 in row.findAll('div', attrs={'class': 'KambiBC-event-participants__name'}):
cell2n3append.append(cell2n3.text.encode('utf-8').strip())
...
ps
在终端中,输出与以前一样......例如
之前('Cear\xe1-CE') -->现在('Cear\xc3\xa1-CE')
但在 csv 中它是 Ceará-CE
修复您的编码错误尽早,而不是后期字符替换。
因此,与其固定提取字符串的编码,不如尽早阅读网页的正确编码(使用 http headers、元标记等),然后所有抓取的字符串应该都是正确的。
我正在从一个网站上抓取数据,该网站有一些非英文字母,例如 Vitória,这完全弄乱了我的数据因为输出是 Vit\xf3ria.
如何替换 \xf3 和其他类似的?
ps:
text.replace('\xf3', '')
不起作用。如果可能的话,我希望以 csv 格式显示和保存 ó 或此类字母。
在Python 3:
>>> bytes('Vit\xf3ria', 'unicode-escape').decode('unicode-escape')
'Vitória'
感谢评论中的所有帮助,我找到了答案: 学分: @SIM、@match、@t.m.adam 和@dax
开始了。
text.encode('utf-8').strip()
感谢大家。
代码原样:
...
for cell2n3 in row.findAll('div', attrs={'class': 'KambiBC-event-participants__name'}):
cell2n3append.append(cell2n3.text.encode('utf-8').strip())
...
ps 在终端中,输出与以前一样......例如
之前('Cear\xe1-CE') -->现在('Cear\xc3\xa1-CE')
但在 csv 中它是 Ceará-CE
修复您的编码错误尽早,而不是后期字符替换。
因此,与其固定提取字符串的编码,不如尽早阅读网页的正确编码(使用 http headers、元标记等),然后所有抓取的字符串应该都是正确的。