UnicodeEncodeError:'ascii'编解码器不能以特殊名称编码字符

我的Python(版本2.7)脚本运行良好从本地html文件获得一些公司名称,但是当涉及到一些特定的国家名称,它给出了这个错误“UnicodeEncodeError:”ascii“编解码器不能编码字符”

当这个公司名字来临的时候特别会出错

公司名称: KühlfixKälteanlagenIng.Gerhard Doczekal&Co. KG

该链接无法处理

Traceback (most recent call last): File "C:\Python27\Process2.py", line 261, in <module> flog.write("\nCompany Name: "+str(pCompanyName)) UnicodeEncodeError: 'ascii' codec can't encode character u'\xfc' in position 9: ordinal not in range(128) 

错误在这行代码中给出:

 if companyAlreadyKnown == 0: for hit in soup2.findAll("h1"): print "Company Name: "+hit.text pCompanyName = hit.text flog.write("\nCompany Name: "+str(pCompanyName)) companyObj.setCompanyName(pCompanyName) 

尝试在脚本开始处将系统默认编码设置为utf-8 ,以便所有string都使用该编码进行编码。

示例 –

 import sys reload(sys) sys.setdefaultencoding('utf-8') 

上面应该将默认编码设置为utf-8

你真的想这样做

 flog.write("\nCompany Name: "+ pCompanyName.encode('utf-8')) 

这是unicode演示文稿中描述的“编码迟到”策略(幻灯片32到35)。