Scrapy命令行功能--scrapy shell

缺乏、安全感 2022-05-31 03:45 299阅读 0赞

本文首发于我的博客:gongyanli.com
我的简书:https://www.jianshu.com/p/90a6820635f8

前言:本文主要讲解Scrapy的命令行功能,Scrapy提供了两种类型的命令。

  1. 1.全局命令
  2. 2.项目命令,必须在Scrapy项目中运行

全局命令

  1. 1.startproject
  2. > scrapy startproject [project_name]
  3. > 创建名为mySpiderScrapy项目
  4. $ scrapy startproject mySpider
  5. 2.settings
  6. > scrapy settings [options]
  7. > 当项目运行时,输出项目的设定值,否则输出Scrapy的默认设定值
  8. $ scrapy settings --get BOT_NAME scrapybot
  9. $ scrapy settings --get DOWNLOAD_DELAY 0
  10. 3.runspider
  11. > scrapy runspider <spider_file.py>
  12. > 未创建项目的情况下,运行一个编写好的spider模块
  13. $ scrapy runspider testSpider.py
  14. 4.shell
  15. > scrapy shell [url]
  16. > 启动Scrapy shellurl可选
  17. $ scrapy shell "http://www.baidu.com"
  18. 5.fetch
  19. > scrapy fetch <url>
  20. > 使用Scrapy下载器(downloader)下载给定的url,并将获取的内容输出
  21. > 命令以spider下载页面的方式获取页面,如果在项目中运行,fetch将会使用项目中spider的属性访问;如果在非项目中运行,则会使用默认Scrapy downloader的设定
  22. $ scrapy fetch --nolog "http://www.baidu.com"
  23. $ scrapy fetch --nolog --headers "http://www.baidu.com"
  24. 6.view
  25. > scrapy view <url>
  26. > 在浏览器中打开url,并以Scrapy spider获取到的形式显示
  27. > view(response)效果一样
  28. $ scrapy view "http://www.baidu.com"
  29. 7.version
  30. > scrapy version [-v]
  31. > 输出Scrapy版本
  32. > 配合-v运行时,同时输出PythonTwisted以及平台信息,方便bug提交
  33. 8.bench
  34. > scrapy bench
  35. > 用于运行benchmark测试,测试Scrapy在硬件上的效率

项目命令

  1. 1.crawl
  2. > scrapy crawl <spider>
  3. > 使用spider进行爬取
  4. $ scrapy crawl mySpider
  5. 2.check
  6. > scrapy check [-l] <spider>
  7. > 运行contract检查
  8. $ scrapy check -l
  9. 3.list
  10. > scrapy list
  11. > 列出当前项目中所有的可用的spider,每行输出一个
  12. 4.edit
  13. > scrapy edit <spider>
  14. > 使用设定的编辑器编辑给定的spider,此命令仅提供一个快捷方式,可自由选择编辑器
  15. $ scrapy edit mySpider
  16. 5.parse
  17. > scrapy parse <url> [options]
  18. > 获取给定的url并使用相应的spider分析处理
  19. > 如果提供--callback选项,则使用spider中的解析方法进行处理。
  20. > 支持的选项:
  21. >>> --spider=SPIDER:跳过自动检测spider并强制使用特定的spider
  22. >>> --a NAME=VALUE:设定spider参数(可能被重复)
  23. >>> --callback or -c:spider中用于解析response的回调函数
  24. >>> --pipelines:在pipelin中处理item
  25. >>> --rules or r:使用CrawlSpider规则来发现用于解析response的回调函数
  26. >>> --noitems:不显示爬取到的item
  27. >>> --nolinks:不显示提取到的链接
  28. >>> --nocolour:避免使用pygments对输出着色
  29. >>> --depth or -d:指定跟进链接请求的层次数(默认:1
  30. >>> --verbose or -v:显示每个请求的详细信息
  31. $ scrapy parse "http://www.baidu.com"
  32. 6.genspider
  33. > scrapy genspider [-t template] <name> <domain>
  34. > 在当前项目中创建spider
  35. > 这是创建spider的快捷方式,可使用提前定义好的模板来生成spider,也可自己创建spider的源文件
  36. $ scrapy genspider -l
  37. > 显示有哪些模板
  38. $ scrapy genspider -d basic
  39. $ scrapy genspider -t basic example example.com
  40. 7.deploy
  41. > scrapy deploy [<target:project> | -l <target> | -L]
  42. > 部署项目到Scrapyd服务

发表评论

表情:
评论列表 (有 0 条评论,299人围观)

还没有评论,来说两句吧...

相关阅读