Scrapy的启动方式介绍

本文详细介绍了Scrapy框架的两种启动方式:通过命令行使用`scrapycrawl`和`scrapyrunspiders`,以及通过Python脚本使用CrawlerProcess、CrawlerRunner进行启动。还提醒了检查robots.txt文件的注意事项。
摘要由CSDN通过智能技术生成

Scrapy_启动方式介绍

image-20220624215827085

Scrapy启动的方式有多种方式:

  • Scrapy命令运行

    • 运行环境

      • 命令行:cmd/powershell/等等

image-20220711144218882

image-20220711144331236

  • 运行Python脚本

    • 运行环境

      • 命令行:cmd/powershell/等等
      • 编辑器:VSCode/PyCharm等等

注意

运行程序之前,要确认网站是否允许爬取robots.txt 文件

Scrapy_命令启动爬虫

image-20220713151312787

1 scrapy命令

scrapy框架提供了对项目的命令scrapy ,具体启动项目命令格式如下:

1.2 方法1

scrapy crawl 爬虫名

注意

这的爬虫名是爬虫文件中name属性的值

问题

image-20220706150422442

命令无法启动


解决方案

切换到项目目录中,运行即可

1.2 方法2

scrapy runspider spider_file.py

注意

  • 这是爬虫文件的名字
  • 要指定到spider文件夹

Scrapy_脚本启动爬虫

image-20220713140246976

Scrapy为开发者设置好了启动好的对象。因此,我们通过脚本即可启动Scrapy项目

1 运行脚本

在项目的目录下,创建脚本,比如项目名为:scrapy01,创建脚本的路径为scrapy01\scrapy01\脚本.py

2 脚本

  • 使用cmdline
from scrapy.cmdline import execute
execute(['scrapy', 'crawl', '爬虫名字'])

  • 使用CrawlerProcess
from scrapy.crawler import CrawlerProcess
from spiders.baidu import BaiduSpider


process = CrawlerProcess()
process.crawl(BaiduSpider)
process.start()

  • 使用CrawlerRunner
from twisted.internet import reactor
from spiders.baidu import BaiduSpider
from spiders.taobao import TaoBaoSpider
from scrapy.crawler import CrawlerRunner
from scrapy.utils.log import configure_logging


configure_logging() # 开启日志出输出
runner = CrawlerRunner()
runner.crawl(BaiduSpider)
runner.crawl(TaoBaoSpider)
d = runner.join()
d.addBoth(lambda _: reactor.stop())
reactor.run()

3 运行

命令行运行

python 脚本.py

VSCode运行

右键脚本编辑区空白处==> run python file in terminal(运行python文件在命令行)

image-20220711153330051

VSCode调试运行

打开脚本文件 ==> 选择调试运行

image-20220711153751693

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

留不住的人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值