写入CSV时获取UnicodeEncodeError

时间:2018-06-12 07:12:30

标签: python python-3.x unicode

我正在使用python 3.6并尝试获取youtube视频评论并创建它的csv文件。从json文件,我从谷歌服务器获取我尝试获取某个对象,但在将其写入csv时,它显示UnicodeEncodeError

for i in range(0,length):
    results= result["items"][i].get('snippet').get("topLevelComment").get('snippet').get("textDisplay")
    print(results)
    results=results.replace(",","")

    csvFile.write(results)
    csvFile.write('\n')
    time.sleep(STAGGER_TIME)

csvFile.close()

这是错误:

UnicodeEncodeError: 'charmap' codec can't encode characters in position 20-23: character maps to <undefined>

使用encode(utf-8)转换结果没有帮助,因为之后它会给出

TypeError: a bytes-like object is required, not 'str'

1 个答案:

答案 0 :(得分:0)

尝试添加

reload(sys)
sys.setdefaultencoding('utf8')

执行代码之前。

然后使用str(结果)转换响应。在将默认编码设置为utf-8后,不确定您获得TypeError的行。