from http://wangye.org/blog/archives/629/下的评论
出错的原因其实是:在python系统使用默认的编码类型(此处为ascii),但是在写入到文件中 时,由于其中一些内容ascii编码不支持,所以报错了。
所以,更好的办法是,在输出的时候,对文件制定特定的UTF-8编码即可,
而无需改动默认编码。
具体做法是:不使用open打开文件,而使用codecs:
import codecs
fp = codecs.open('output.txt', 'a+', 'utf-8')
fp.write(data)
fp.close()