美文网首页我用Python每天写500字每天写1000字
Python爬虫学习(十七)Scrapy命令行工具

Python爬虫学习(十七)Scrapy命令行工具

作者: 弃用中 | 来源:发表于2018-01-18 20:43 被阅读152次

    号外, 文末有爬虫小实例

    我们可以使用命令行工具对Scrapy项目进行控制,比如Python爬虫学习(十六)初窥Scrapy用的startprojectgenspider以及crawl命令。

    Scrapy的命令都是如下格式:

    scrapy <command> [options] [args]
    

    我们可以使用:

    scrapy -h
    

    查看可用的命令,如下:


    当你需要查看某条命令的详细信息时,可以用:

    scrapy <command> -h
    

    比如:


    总的来说,Scrapy提供了两种命令,一种是全局命令,另一种是项目命令。项目命令必须在项目中运行,而全局命令则不需要。

    全局命令

    • startproject
    • settings
    • runspider
    • shell
    • fetch
    • view
    • version

    项目命令

    • crawl
    • check
    • list
    • edit
    • parse
    • genspider
    • deploy
    • bench

    那就让我们尝试用一下呗。

    startproject

    • 语法:scrapy startproject <project_name> [project_dir]
    • 不需要项目

    如果不记得用法,记得用scrapy startproject -h

    settings

    • 语法:scrapy settings [options]
    • 不需要项目

    如果你在项目中运行,该命令将会输出项目的设定值,否则输出默认值。


    runspider

    • 语法:scrapy runspider [options] <spider_file>
    • 不需要项目

    shell

    • 语法:scrapy shell [url|file]
    • 不需要项目

    以给定的url|file(如果给出)或者空(没有给出)启动Scrapy shell。Scrapy shell是一个交互终端,供您在未启动spider的情况下尝试及调试爬取代码。

    比如,scrapy shell "http://www.baidu.com"

    fetch

    • 语法:scrapy fetch [options] <url>
    • 不需要项目


    我们使用scrapy fetch --headers -nolog "http://www.baidu.com"输出响应的头部信息:

    view

    • 语法: scrapy view [options] <url>
    • 不需要项目

    在浏览器中打开给定的URL,并以Scrapy spider获取到的形式展现。 有些时候spider获取到的页面和普通用户看到的并不相同。 因此该命令可以用来检查spider所获取到的页面,并确认这是你所期望的。

    version

    • 语法:scrapy version [-v]
    • 不需要项目

    输出scrapy的版本信息,配合-v运行,可以输出更多信息:

    crawl

    • 语法:scrapy crawl [options] <spider>
    • 需要项目


    genspider

    • 语法:scrapy genspider [options] <name> <domain>
    • 需要项目
      在当前的项目中创建spider,这是一种创建spider的快捷方法。可以利用模板生成spider,scrapy提供了几种可选模板,如下:

    在前篇我们使用的就是这种方法,当然,你也可以自己写spider。

    至于其余的命令,感兴趣的话,就自己去尝试尝试呗!总之,记得-h大法。

    最后,附上一些入门级别的小爬虫:

    糗事百科段子
    豆瓣电影Top250
    今日头条街拍
    网易云音乐热评
    安居客二手房信息
    豆瓣模拟登录
    艺龙酒店
    内涵段子
    新浪微博移动端
    拉钩网
    电影天堂

    感兴趣的童鞋可以去看看,当然,最好是用你的聪明才智把它们一步步完善,比如加上异常处理,更厉害的反爬技术等等。

    以上。

    相关文章

      网友评论

      本文标题:Python爬虫学习(十七)Scrapy命令行工具

      本文链接:https://www.haomeiwen.com/subject/hxksnxtx.html