2020年11月6日星期五

Scrapy数据保存为excel

Scrapy LOGO

背景

Scrapy默认是可以保存为csv的,可以用excel打开,使用scrapy crawl spider_name -o data.csv即可。但csv格式有诸多不便,比如中文编码问题,比如说逗号分隔,虽然都能解决,但对一般用户来说还是不够友好。

于是就想到了将数据直接保存进xlsx文件里,一劳永逸,可解决所有问题。主要用到了Scrapy的pipeline.py和python的开源库OpenPyxl.

关于pipeline

pipeline是scrapy中一个模块,数据被spider抓取之后会由pipeline处理。pipeline中通常会有几个"工序",数据会按照顺序通过这几个"工序"。如果没有通过某项"工序",会被抛弃掉。

pipeline一般有几种用途:

  • 清洗HTML数据(比如清洗某无用tag)
  • 确认已抓取数据(比如确认是否包含特定字段)
  • 检查重复(过滤重复数据)
  • 保存已抓取数据入数据库

我们在这里用到的是最后一个功能,只是保存为xlsx文件。

关于OpenPyxl

OpenPyxl是读写 Excel 2007 xlsx/xlsm文件的python库。废话不多说,直接上例子:

from openpyxl import Workbookwb = Workbook() # class实例化ws = wb.active # 激活工作表ws['A1'] = 42 # A1表格输入数据ws.append(['科比', '1997年', '后卫', '赛季报销']) # 添加一行数据wb.save('/home/alexkh/nba.xlsx') # 保存文件

原文转载:http://www.shaoqun.com/a/489370.html

敦煌网:https://www.ikjzd.com/w/189

c88是什么:https://www.ikjzd.com/w/1017

isbn:https://www.ikjzd.com/w/174


背景Scrapy默认是可以保存为csv的,可以用excel打开,使用scrapycrawlspider_name-odata.csv即可。但csv格式有诸多不便,比如中文编码问题,比如说逗号分隔,虽然都能解决,但对一般用户来说还是不够友好。于是就想到了将数据直接保存进xlsx文件里,一劳永逸,可解决所有问题。主要用到了Scrapy的pipeline.py和python的开源库OpenPyxl.关于
西集网:https://www.ikjzd.com/w/1353
邮乐网购:https://www.ikjzd.com/w/1776
2019年终旺季稳不稳?大数据告诉你答案!:https://www.ikjzd.com/home/111404
三牙山几点开门?靖西三牙山游玩要多久?:http://tour.shaoqun.com/a/19559.html
在欧洲旅行如何避免被窃:http://tour.shaoqun.com/a/68530.html

没有评论:

发表评论

跨境电商资讯:外贸宣传平台有哪些(出口的

现在很多做外贸的人都非常关注 外贸企业怎么推广 ,而现在推广的途径和平台有很多,企业如果都做,成本和时间精力是一个问题,而且并不是所有的推广渠道都是有用的。今天云程网络就来为大家盘点几个有效的外贸推广渠道。 一、海外社交媒体营销 Facebook,领英等海外社交媒体营销在近几年得...