scrapy的安装
一、在window系统下安装
- 1、进入工作空间
2、尝试使用最简单的命令安装
pip3 install scrapy # 报错信息如下 # Failed building wheel for Twisted # Microsoft Visual C++ 14.0 is required...3、工作空间先安装
whlpip3 install whl4、到网站下载
- 1.
scrapy依赖twiste先查找twisted下载 - 2.查找
scrapy下载
- 1.
5、安装
tristedpip3 install Twisted-17.1.0-cp36-cp36m-win_amd64.whl6、安装
scrapypip3 install Scrapy-1.3.3-py2.py3-none-any.whl7、测试
(scrapy_page) ➜ ~ scrapy -h
二、在mac系统下安装
- 1、进入工作空间
2、使用
pip3安装pip3 install scrapy
三、scrapy爬虫初探
1、创建一个
scrapy项目scrapy startproject tutorial[项目名称]2、关于
scrapy项目文件介绍|____scrapy.cfg # Scrapy部署时的配置文件 |____tutorial # 项目的模块,引入的时候需要从这里引入 | |______init__.py | |______pycache__ | |____items.py # Items的定义,定义爬取的数据结构 | |____middlewares.py # Middlewares的定义,定义爬取时的中间件 | |____pipelines.py # Pipelines的定义,定义数据管道 | |____settings.py # 配置文件 | |____spiders # 放置Spiders的文件夹 | | |______init__.py | | |______pycache__3、创建一个爬虫
cd tutorial scrapy genspider quotes(爬虫名字,一个工程中唯一的) "网址"4、会自动在
spiders包下生成一个以爬虫名称为名称的文件# -*- coding: utf-8 -*- import scrapy class QuotesSpider(scrapy.Spider): name = "quotes" allowed_domains = ["quotes.toscrape.com"] start_urls = ['http://quotes.toscrape.com/'] def parse(self, response): pass5、书写
itemimport scrapy class QuoteItem(scrapy.Item): text = scrapy.Field() author = scrapy.Field() tags = scrapy.Field()6、将
item关联到爬虫中from scrapytest.items import QuoteItem class QuotesSpider(scrapy.Spider): name = 'quotes' allowed_domains = ['quotes.toscrape.com'] start_urls = ['http://quotes.toscrape.com/'] def parse(self, response): quotes = response.css('.quote') for quote in quotes: item = QuoteItem() item['text'] = quote.css('.text::text').extract_first() item['author'] = quote.css('.author::text').extract_first() item['tags'] = quote.css('.tags .tag::text').extract() yield item7、运行爬虫
scrapy crawl quotes # 直接运行 scrapy crawl quotes -o quotes.json # 生成json文件存到本地