Scrapy 命令行使用

目录

1.项目创建:

2.from xiaozhu.items import XiaozhuItem #导入定义爬虫字段:

3.Scrapy爬虫运行:

4.代码调式

5.写入csv命令

6.打开一个页面并访问 Scrapy 命令

7.查看可用爬虫模板

8.以 csvfeed 模板创建一个 mycsvspider.py 文件,在 spider 目录下,最后为域名

9.解析爬虫模板中给定的 url

10.保存指定文件格式

11.运行爬虫时指定爬取数量

12.setting命令

13.runspider命令

14.shell命令

request

response

fetch(req_or_url)

view(response)

15.fetch命令

16.view命令


1.项目创建:

         命令行输入cd xx,xx为要创建在其中的爬虫项目

         再输入scrapy startproject xxx,xxx为项目名字

 

2.from xiaozhu.items import XiaozhuItem #导入定义爬虫字段:

         这里在运行会报错,但是不影响爬取结果不用管

 

3.Scrapy爬虫运行:

         cmd切换到项目的xxxx文件夹,输入命令:

scrapy crawl xxxx,就可运行爬虫

scrapy crawl xxx --nolog 不输出日志

scrapy crawl xxx -s LOG_LEVEL=ERROR 之输出日志错误信息

 

4.代码调式

在项目文件 创建一个 main.py 代码

      from scrapy.cmdline import execute
      execute(['scrapy','crawl','stock','-o','item.json'])

等价为在项目文件夹下执行命令 ‘scrapy crawl stock -o item.json’,将爬取的数据导出到 items.py 中

在代码里可设置断点,然后选择 ‘Debug main’ 命令,进行调试,最后在 pycharm 中运行 ‘main’ 会有打印结果

 

5.写入csv命令

--output=路径/xxx.csv -s

 

6.打开一个页面并访问 Scrapy 命令

scrapy shell 页面网址

 

7.查看可用爬虫模板

scrapy genspider -l

 

8.以 csvfeed 模板创建一个 mycsvspider.py 文件,在 spider 目录下,最后为域名

scrapy genspider -t csvdeed mycsvfeed iqianyue.com

不指定模板,默认使用 basic

scrapy genspider xxx yyy,xxx 为 爬虫名,yyy 为域名

 

9.解析爬虫模板中给定的 url

scrapy parse --spider=爬虫名 url

 

10.保存指定文件格式

  • scrapy crawl  -o name items.json 
  • scrapy crawl  -o name items.jl
  • scrapy crawl  -o name items.csv
  • scrapy crawl  -o name items.xml

json 与 json 行格式轻微的不同是,.json 文件是在一个大数组中存储的 json 对象,这以为这如果你有一个 1GB 文件,可能不得不在使用典型的解析器之前,将全部存入内存当中,而 .jl 是每行包含一个 json 对象,name 为爬虫名字

需要明确指定导出数据格式时,使用 -t 参数

scrapy crawl name -t csv books.data

指明导出路径,%(name)s,%(time)s 特殊变量,每次都输入很长的命令行不方便,可在配饰文件 setting.py 中设置

scrapy crawl name -o 'export_data/%(name)s/%(time)s.csv'

 

11.运行爬虫时指定爬取数量

scrapy crawl 爬虫名 -s CLOSESPIDER_ITEMCOUNT=90 指定爬取数量为90个

 

12.setting命令

语法:scrapy setting [option]

设定项目的一些参数

 

13.runspider命令

语法:scrapy runspider xxx.py

在未创建项目的情况下,运行一个编写好的 spider 模块

 

14.shell命令

语法:scrapy shell [url]

启动 scrapy shell

一般用于前期爬取实验

在此环境中已经闯进好了一些变量(对象和函数),以下几个为最为常用:

request

最近一次下载对应的 Requests 对象

response

最近一次下载对应的 Response 对象

fetch(req_or_url)

该函数用于下载页面,可传入一个 Request 对象或 url 字符串,调用后悔更新变量 request 和 response

view(response)

用于在浏览器中显示 response 中的页面,这是 scrapy 下载的页面,与用浏览器直接输入 url 打开的有时候不同,用这个更可靠

 

 

15.fetch命令

语法:scrapy fetch <url>

使用下载器下载给定的 url,并将获取到的内容送到标准输出

 

16.view命令

语法:scrapy view <url>

在浏览器中打开指定 url

 

 

 

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值