Scrapy抓取数据存储到Excel
程序员文章站
2022-05-05 15:41:20
...
抓取数据存储到Excel
有两种方法
一、修改启动命令
Scrapy默认是可以保存为csv的,可以用excel打开,使用
scrapy crawl spider_name -o data.csv -s FEED_EXPORT_ENCODING='utf-8'
# -o 输出位置以及文件名
# -s 防止发生编码问题
但csv格式有诸多不便,比如中文编码问题,比如说逗号分隔用Excel打开时会出现很多问题
二、使用Pipeline
class DoubanPipeline(object):
def __init__(self):
self.wb = Workbook() # 类实例化
self.ws = self.wb.active # **工作表
self.ws.append(['comment_id', 'created_time', 'content', 'subject_id', 'author_id', 'author', 'useful_count', 'stars']) # 添加表头
def process_item(self, item, spider):
data = [item["comment_id"],item["created_time"],item["content"],item["subject_id"],item["author_id"],item["author"],item["useful_count"],item["stars"]]
self.ws.append(data) # 将数据以行的形式添加到工作表中
self.wb.save('Earth.xlsx') # 保存
return item
在存储Excel中,如果确认数据量较小,不会出错的情况下,可以将保存那步放到close_spider()方法中,这样就不用频繁的保存。
def close_spider(self,spider):
self.wb.save('Earth.xlsx')
但如果一旦爬虫非正常终止,则不会保存excel。不如上面那种安全。
推荐阅读
-
零基础写python爬虫之抓取百度贴吧并存储到本地txt文件改进版
-
复制内容到Excel中排版如何取消excel同行数据中的序列编号
-
ASP将Excel数据导入到SQLServer的实现代码
-
把Excel上的数据表格导入到word中以方便计算
-
Excel 2016表格转换实现数据快速从二维表到一维表的转换
-
PHP导出MySQL数据到Excel文件(fputcsv)
-
Python爬虫入门教程 31-100 36氪(36kr)数据抓取 scrapy
-
Android存储字符串数据到txt文件
-
ASP.NET MVC使用EPPlus,导出数据到Excel中
-
python读取excel指定列数据并写入到新的excel方法