当我尝试将解析的数据保存到CSV文件中时,出现以下错误:
UnicodeEncodeError:'ascii'编解码器无法在以下位置编码字符u'\ u2013' 位置29:序数不在范围内(128)
我试图在脚本的第一行中使用命令from __future__ import unicode_literals
,并使用以下代码将整数和字符串转换为字节字符串:
self.writer.writerow([unicode(s).encode("utf-8") for s in row])
for article in Soup.find_all('article'):
csv_writer.writerow([unicode(article).encode("utf-8") for article in Soup.find_all('article')])
csv_writer.writerow([headline,paragraph,yt_link])
错误消息:
csv_writer.writerow([headline,paragraph,yt_link])
UnicodeEncodeError: 'ascii' codec can't encode character u'\u2013' in position 29: ordinal not in range(128)
答案 0 :(得分:0)
我尝试在python 3.6中运行该脚本,然后我得到了预期的输出而没有任何问题,之前我曾尝试在python 3.7中运行相同的脚本,当时我遇到了以上错误