我们可以用csvfeed模版创建的爬虫爬取CSV文件的数据,CSV文件是一种可以与表格数据相互转化的文件格式。
一、创建项目和爬虫文件
#在需要创建项目的文件夹下,打开命令行,运行下面命令
python -m scrapy startproject csvpjt
cd csvpit
python -m scrapy genspider -t csvfeed steve 网站名(例如xxx.com)
二、爬虫文件格式
# -*- coding: utf-8 -*-
from scrapy.spiders import CSVFeedSpider
from csvpjt.items import CsvpjtItem
class SteveSpider(CSVFeedSpider):
name = 'steve'
allowed_domains = ['xxx.com']
start_urls = ['http://xxx.com/mydata.csv']
# headers:主要存放在CSV文件中包含的用于提取字段的行信息的列表
headers = ['name', 'sex', 'addr', 'email']
# delimiter:主要存放字段之间的间隔符
delimiter = ','
# Do any adaptations you need here
#def adapt_response(self, response):
# return response
#接收一个response对象并进行对应的处理
def parse_row(self, response, row):
item = CsvpjtItem()
item["name"] = row['name'].encode()
item["sex"] = row['sex'].encode()
print("名字是:")
print(item["name"])
print("性别是:")
print(item["sex"])
print("--------------------------------------")
return item
三、运行程序:
python -m scrapy crawl steve --nolog