首先scrapy startproject '文件名' 创建你所需要的文件名字
然后在spiders 里面创建你的爬虫规则,
shell里面操作 cd tutorial 然后 scrapy genspider books http://books.toscrape.com/#创建py文件,创建name爬虫名字,创建需要爬取的网站
spiders::表达的更像一个填空题
爬虫从哪个网址开始爬区?
对于一个已下载的页面,提取其中的哪些数据?
爬取完当前页面后,接下来爬取哪个或哪些页面?
import scrapy class BooksSpider(scrapy.Spider): name='books' start_urls=['http://books.toscrape.com/'] def parse(self,response): for book in response.css('article.product_pod'): name=book.xpath('./h3/a/@title').extract_first() price=book.css('p.price_color::text').extract_first() yield { 'name':name, 'price':price } next_url=response.css('ul.pager li.next a::attr(href)').extract_first() if next_url: next_url=response.urljoin(next_url) yield scrapy.Request(next_url,callback=self.parse)
然后scrapy crawl books -o books.csv books是代表你爬虫内命名的name的名字。 -o 创建你所爬取数据的所储存的文件名字 倒出csv格式
实现一个Spider只需要4个步骤
1:继承scrapy.Spider
2:为Spider取名
3:设定起始爬区点
4:实现页面解析函数