Python 3以语言环境默认编码打开文本文件;如果该编码无法处理您尝试写入的Unicode值,请选择其他编解码器:
with open('result.csv', 'w', encoding='UTF-8', newline='') as f:
它将所有Unicode字符串编码为UTF-8,该编码可以处理所有Unicode标准。
请注意,该csv
模块建议您使用newline=''
来打开文件,以防止换行。
您还需要在循环外仅 一次 打开文件for
:
with open('result.csv', 'w') as f: # Just use 'w' mode in 3.x
fields = ('title', 'developer', 'developer_link', 'price', 'rating', 'reviewers',
'downloads', 'date_published', 'operating_sy@R_301_2354@', 'content_rating',
'category')
w = csv.DictWriter(f, )
w.writeheader()
for div in soup.findAll( 'div', {'class' : 'details'} ):
#
# build app_details
#
w.writerow(app_details)