python爬虫运行_Scrapy:运行爬虫程序的方式

本文详细介绍了在Windows 10环境下,使用Python 3.6.4和Scrapy 1.5.0运行爬虫的多种方法,包括`scrapy runspider`、`scrapy crawl`、`CrawlerProcess`和`CrawlerRunner`。通过示例程序展示了如何在命令行和编程方式下执行爬虫,强调了遵守robots.txt协议的重要性,并探讨了执行多个爬虫程序的可能性。
摘要由CSDN通过智能技术生成

Windows 10家庭中文版,Python 3.6.4,Scrapy 1.5.0,

在创建了爬虫程序后,就可以运行爬虫程序了。Scrapy中介绍了几种运行爬虫程序的方式,列举如下:

-命令行工具之scrapy runspider(全局命令)

-命令行工具之scrapy crawl(项目级命令)

-scrapy.crawler.CrawlerProcess

-scrapy.crawler.CrawlerRunner

注意,当系统中同时存在Python 2、Python 3时,孤的电脑直接执行scrapy命令使用的是Python 2,此时,需要在scrapy命令前添加“python3 -m”才可以使用Python 3,因此,请使用virtualenv建立虚拟环境运行scrapy等各种程序。

方式一:scrapy runspider命令(全局)

语法:scrapy runspider

还有一些配置项,可以使用scrapy runspider -h查看。

示例程序:文件名为baidu_com.py

1 #-*- coding: utf-8 -*-

2 importscrapy3

4 classBaiduComSpider(scrapy.Spider):5 name = 'baidu.com'

6 allowed_domains = ['www.baidu.com']7 start_urls = ['https://www.baidu.com/']8

9 defparse(self, response):10 yield{11 'title': response.xpath('//title/text()').extract_first()12 }

parse函数使用response.xpath获取网页

的文本:

444532-20180704105025873-531406371.png

444532-20180704105032097-762630126.png

方式二:scrapy crawl(项目级)

crawl是项目级命令,因此只能在某个Scrapy项目中使用。那么,首先创建项目test070401:

444532-20180704105202247-387794608.png

使用tree命令查看创建的项目的结构:

444532-20180704105220096-1663940222.png

刚刚创建的Scrapy项目的spiders目录中只有__init__.py文件,那么,将之前创建的baidu_com.py拷贝到此文件中:

444532-20180704105322138-1976303108.png

现在,可以在项目test070401中使用crawl命令执行爬虫程序了。且慢,先看看crawl的语法:

scrapy crawl

注意,是而不是runspider命令的,准确的说是一个 爬虫程序的名称——爬虫类里面的name属性(必须required,且在项目中具有唯一性uniq

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值