Scrapy的基本命令
基本命令分两种: 全局命令
和项目命令
全局命令(在命令行中执行的指令)
fetch
主要用来显示爬虫爬取的过程
scrapy fetch http://www.taobao.com
如果他在scrapy项目之外使用,会调用scrapy默认的爬虫进行网页的爬取
如果他在scrapy项目中使用,会使用scrapy项目中的爬虫进行网页的爬取
runspider
不依托scrapy项目来直接运行一个爬虫文件
创建first.py文件编写代码,执行指令
scrapy runspider first.py
from scrapy.spider import Spider
class FirstSpider(Spider):
name = "first" # 爬虫名
allowed_domains = ["baidu.com"] # 设置允许爬取的域名
start_urls = [
"http://www.baidu.com" # 设置爬取的起始网页
# 可以有多个
]
def parse(self, response):
pass
settings
查看scrapy默认的配置信息
如果是在项目下查看,是项目的配置信息
shell
启动scrapy的交互终端,shell经常在开发以及调试中用到
使用scrapy的交互终端,可以在不启动scrapy爬虫的情况下,对网站响应进行调试
也可以在交互终端中写一些python的代码
scrapy shell http://www.baidu.com --nolog
ti = sel.xpath("/html/head/title")
print(ti)
startproject
用于创建一个scrapy爬虫项目
scrapy startproject first
version
查看scrpay的版本信息
scrapy version
view
下载某个网页并用浏览器查看
scrapy view http://www.baidu.com
项目命令(在scrapy项目中执行的指令)
bench
可以测试本地硬件性能,会创建一个本地服务器并且以最大的爬行速度爬行
scrapy bench
genspider
用于在项目下创建爬虫文件
使用该指令可以基于现有爬虫模板来生成一个爬虫文件
-l 来查看当前可以使用的模板
scrapy genspider -l
-t 使用某个爬虫模板来生成一个爬虫文件
scrapy genspider -t basic txl baidu.com
txl : 爬虫文件名
baidu.com : 可以爬取的域名
crawl
使用crawl指令可以启动某一个爬虫
scrapy scrawl 爬虫名
list
使用list命令来列出当前项目可使用的爬虫文件
scrapy list
edit
使用edit指令直接打开对应的编辑器对爬虫文件进行编写
这条指令对linux比较友好
对windows没什么卵用,因为会出现问题
scrapy edit 爬虫名