UnicodeEncodeError:'charmap'编解码器无法编码字符'\ u2010':字符映射至<undefined> 尝试打印从python 3.4中使用硒请求的网站获得的'Á'时,我不断收到UnicodeEncodeError。我已经在.py文件的顶部定义了# -*- coding: utf-8 -*-def是这样的:from selenium import webdriverb = webdriver.Firefox()b.get('http://fisica.uniandes.edu.co/personal/profesores-de-planta')dataProf = b.find_elements_by_css_selector('td[width="508"]')for dato in dataProf: print(datos.text)和例外:Traceback (most recent call last): File "C:/Users/Andres/Desktop/scrap/scrap.py", line 444, in <module> dar_p_fisica() File "C:/Users/Andres/Desktop/scrap/scrap.py", line 390, in dar_p_fisica print(datos.text) #.encode().decode('ascii', 'ignore') File "C:\Python34\lib\encodings\cp1252.py", line 19, in encode return codecs.charmap_encode(input,self.errors,encoding_table)[0]UnicodeEncodeError: 'charmap' codec can't encode character '\u2010' in position 173: character maps to <undefined>提前致谢
3 回答
沧海一幻觉
TA贡献1824条经验 获得超5个赞
已经知道了。正如在此答案中指出的那样,编码错误不是来自python,而是来自控制台使用的编码。因此,解决该问题的方法是运行命令(在Windows中):
chcp 65001
将编码设置为UTF-8,然后再次运行该程序。或者,如果按原样处理pycharm,请转到“设置”>“编辑器”>“文件编码”,并相应地设置IDE和Project编码。
守着一只汪
TA贡献1872条经验 获得超3个赞
在命令提示符下运行:setx PYTHONIOENCODING utf-8 ...然后,重新启动命令提示符,然后键入echo%PYTHONIOENCODING%以确保已设置。在Python中,如果需要,请导入sys,然后打印sys.stdout.encoding,并且应该显示utf-8。
添加回答
举报
0/150
提交
取消