python中输出数据保存成csv输出writerow输出的内容每隔一行就有空行问题的解决

 

clipboard.png这个问题困扰了我一天,终于在行者刘6,博客中找到了解决办法,感谢感谢。

找到的答案,原来是scrapy的问题,见https://stackoverflow.com/questions/39477662/scrapy-csv-file-has-uniform-empty-rows/43394566#43394566

接着我就动手修改了!

先在python里找到scrapy

进去里面,在CsvItemExporter的__init__ 的io.TextIOWrapper添加了newline=''

 

搞定了,可以直接保存为csv文件

 

cmdline.execute("scrapy crawl lianxi -o info.csv -t csv".split())

 

当然,如果安全起见,那么写入的时候,可以按这样子写入

 

with open(file_path, 'a+', encoding='utf-8', newline='') as f:
     csv.writer(f, dialect="excel").writerow(('name','info','rating','num','quote','img_url'))

要注意newline=''跟dialect="excel",这样子就万无一失了!

输出结果:

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章