版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
创建项目
scrapy startproject [project] [project_dir]
将在 project_dir
目录创建 project
项目,也可以不指定目录,项目就会直接创建在当前命令行路径中
创建爬虫
scrapy genspider [example] [example.com]
// 例子
scrapy genspider csdn csdn.net
这是基于预先定义的模板创建 spider 的快捷命令,会在 spiders 子文件夹下创建相应爬虫文件,并且文件内会定义相应网址
爬取
scrapy crawl <spider>
//例子
scrapy crawl csdn
scrapy 会运行相应的爬虫文件去爬取内容
检查
scrapy check [-l] <spider>
列表
>>> scrapy list
baidu
sina
zhihu
列出当前项目中所有可用的 spider
下载
scrapy fetch <url>
使用 ScrapyDownloader 下载给定的URL,并将内容写入标准输出
这个命令可以用来 “查看” 爬虫如何获取特定的页面
--spider=SPIDER
:绕过Spider自动检测并强制使用特定Spider--headers
:打印响应的HTTP头而不是响应的正文--no-redirect
:不遵循HTTP 3xx重定向(默认为遵循它们)
例子:
>>> scrapy fetch --nolog --headers https://www.csdn.net
> Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
> Accept-Language: en
> User-Agent: Scrapy/1.7.2 (+https://scrapy.org)
> Accept-Encoding: gzip,deflate
> Cookie: acw_tc=2760822b15644546751365189e6a099e74f2740f8cdfc852758b43a8d4f9ee; uuid_tt_dd=10_19718684890-1564454675142-851179; dc_session_id=10_1564454675142.824577
>
< Date: Tue, 30 Jul 2019 02:44:35 GMT
< Content-Type: text/html; charset=UTF-8
< Server: openresty
< Vary: Accept-Encoding
< Strict-Transport-Security: max-age=86400
查看
scrapy view <url>
在浏览器中打开给定的 URL,并以 Scrapy spider 获取到的形式展现。 有些时候 spider 获取到的页面和普通用户看到的并不相同。 因此该命令可以用来检查 spider 所获取到的页面
scrapy view https://www.csdn.net
解析
scrapy parse <url> [options]
获取给定的 URL 并使用相应的 spider 分析处理。如果您提供 --callback 选项,则使用 spider 的该方法处理,否则使用 parse
设置
scrapy settings [options]
获取 Scrapy 设置的值
如果在项目中使用,它将显示项目设置值,否则它将显示该设置的默认 Scrapy 值
例子:
>>> scrapy settings --get BOT_NAME
scrapybot
>>> scrapy settings --get DOWNLOAD_DELAY
0
运行爬虫
scrapy runspider <spider_file.py>
运行一个包含在python文件中的spider,而不必创建一个项目