Scrapy1.6 爬虫框架1 安装

2019-06-11 17:03:40 浏览数 (1)

网络爬虫:是一种自动爬取网站内容信息的程序,被广泛运用于搜索引擎和数据挖掘等领域。 网络爬虫的基本执行流程:下载页面 - 提取页面中的数据 - 提取页面中的链接 Scrapy:是一个由Python语言编写的开源的网络爬虫框架,特点:使用简单,跨平台,灵活易拓展等。

安装

本机环境 Mac 10.14, Python3 pip3 install scrapy 安装成功后 scrapy -h 查看包含的命令

image.png

创建一个项目 scrapy startproject tutorial

会生成以下文件

代码语言:javascript复制
tutorial/
    scrapy.cfg            # deploy configuration file
    tutorial/             # project's Python module, you'll import your code from here
        __init__.py
        items.py          # project items definition file
        middlewares.py    # project middlewares file
        pipelines.py      # project pipelines file
        settings.py       # project settings file
        spiders/          # a directory where you'll later put your spiders
            __init__.py

编写第一个爬虫

其实就是写一个类 创建文件 quotes_spider.py 放到 tutorial/spiders 目录

代码语言:javascript复制
import scrapy

class QuotesSpider(scrapy.Spider):
   # 爬虫名,必须唯一
    name = "quotes"

    def start_requests(self):
        urls = [
            'http://quotes.toscrape.com/page/1/',
            'http://quotes.toscrape.com/page/2/',
        ]
        for url in urls:
            yield scrapy.Request(url=url, callback=self.parse)

    def parse(self, response):
        page = response.url.split("/")[-2]
        filename = 'quotes-%s.html' % page
        with open(filename, 'wb') as f:
            f.write(response.body)
        self.log('Saved file %s' % filename)

来到项目的根目录,执行scrapy crawl quotes 显示过程

image.png

结果:发现多出了两个 html 文件,等于我们把网页抓取下来了。

参考:https://docs.scrapy.org/en/1.6/intro/tutorial.html

0 人点赞