十 web爬虫讲解2—Scrapy框架爬虫—Scrapy安装—Scrapy指令

Scrapy框架安装

1、首先,终端执行命令升级pip: python -m pip install --upgrade pip
2、安装,wheel(建议网络安装) pip install wheel
3、安装,lxml(建议下载安装)
4、安装,Twisted(建议下载安装)
5、安装,Scrapy(建议网络安装) pip install Scrapy

测试Scrapy是否安装成功

 

Scrapy框架指令

scrapy -h  查看帮助信息

Available commands:
  bench       Run quick benchmark test (scrapy bench  硬件测试指令,可以测试当前服务器每分钟最多能爬多少个页面)
  fetch         Fetch a URL using the Scrapy downloader (scrapy fetch http://www.iqiyi.com/  获取一个网页html源码)
  genspider        Generate new spider using pre-defined templates ()
  runspider      Run a self-contained spider (without creating a project) ()
  settings        Get settings values ()
  shell         Interactive scraping console ()
  startproject     Create new project (cd 进入要创建项目的目录,scrapy startproject 项目名称 ,创建scrapy项目
  version         Print Scrapy version ()
  view           Open URL in browser, as seen by Scrapy ()

 

创建项目以及项目说明

scrapy startproject adc  创建项目

项目说明

目录结构如下:

├── firstCrawler

│   ├── __init__.py

│   ├── items.py

│   ├── middlewares.py

│   ├── pipelines.py

│   ├── settings.py

│   └── spiders

│       └── __init__.py

└── scrapy.cfg

    • scrapy.cfg: 项目的配置文件
    • tems.py: 项目中的item文件,用来定义解析对象对应的属性或字段。
    • pipelines.py: 负责处理被spider提取出来的item。典型的处理有清理、 验证及持久化(例如存取到数据库)
    • settings.py: 项目的设置文件.
    • spiders:实现自定义爬虫的目录
    • middlewares.py:Spider中间件是在引擎及Spider之间的特定钩子(specific hook),处理spider的输入(response)和输出(items及requests)。 其提供了一个简便的机制,通过插入自定义代码来扩展Scrapy功能。

 

 

项目指令

项目指令是需要cd进入项目目录执行的指令

scrapy -h  项目指令帮助

Available commands:
  bench      Run quick benchmark test
  check      Check spider contracts
  crawl       Run a spider
  edit         Edit spider
  fetch       Fetch a URL using the Scrapy downloader
  genspider    Generate new spider using pre-defined templates
  list        List available spiders
  parse      Parse URL (using its spider) and print the results
  runspider    Run a self-contained spider (without creating a project)
  settings      Get settings values
  shell      Interactive scraping console
  startproject   Create new project
  version       Print Scrapy version (scrapy version  查看scrapy版本信息)
  view      Open URL in browser, as seen by Scrapy (scrapy view http://www.zhimaruanjian.com/  下载一个网页并打开)

 

创建爬虫文件

创建爬虫文件是根据scrapy的母版来创建爬虫文件的

scrapy genspider -l  查看scrapy创建爬虫文件可用的母版

Available templates:母版说明
  basic        创建基础爬虫文件

  crawl        创建自动爬虫文件
  csvfeed        创建爬取csv数据爬虫文件

  xmlfeed     创建爬取xml数据爬虫文件

创建一个基础母版爬虫,其他同理

scrapy genspider  -t  母版名称  爬虫文件名称  要爬取的域名 创建一个基础母版爬虫,其他同理
如:scrapy genspider  -t  basic  pach  baidu.com

 

scrapy check 爬虫文件名称 测试一个爬虫文件是否合规
如:scrapy check pach

 

 

scrapy crawl 爬虫名称  执行爬虫文件,显示日志 【重点】

scrapy crawl 爬虫名称 --nolog  执行爬虫文件,不显示日志【重点】

 

转载于:https://www.cnblogs.com/meng-wei-zhi/p/8182599.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/390430.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

阿里与珠海横琴新区达成战略合作,阿里云助力打造横琴智能岛

5月17日,阿里巴巴集团、蚂蚁金服集团与珠海横琴新区管理委员会签署战略合作协议,三方将围绕云计算、政务民生服务、城市治理、电子商务等领域展开深入合作,推动横琴产业发展,共同建设新型智慧城市。 (阿里巴巴集团、蚂…

chrome 开发工具_我最喜欢的Chrome开发工具提示和技巧

chrome 开发工具Chrome Developer Tools are a super powerful suite of tools for developing web applications. They can do so much, from very basic operations like traversing the DOM, to checking out network requests or even profiling your applications perform…

三十四 Python分布式爬虫打造搜索引擎Scrapy精讲—scrapy信号详解

信号一般使用信号分发器dispatcher.connect(),来设置信号,和信号触发函数,当捕获到信号时执行一个函数 dispatcher.connect()信号分发器,第一个参数信号触发函数,第二个参数是触发信号, 以下是各种信号 sig…

1713. 得到子序列的最少操作次数

给你一个数组 target ,包含若干 互不相同 的整数,以及另一个整数数组 arr ,arr 可能 包含重复元素。 每一次操作中,你可以在 arr 的任意位置插入任一整数。比方说,如果 arr [1,4,1,2] ,那么你可以在中间添…

CVE-2018-1000136:Electron nodeIntegration绕过漏洞

1周前,研究人员发现一个影响Electron所有版本的漏洞,利用该漏洞可以开启nodeIntegration,这可能会造成远程代码执行。Electron是一个使用JavaScript,HTML和CSS等Web技术创建原生程序的框架,它负责比较难搞的部分,而用户…

bash脚本 文件_如何使用Bash脚本来管理从AWS S3存储桶下载和查看文件

bash脚本 文件As you can read in this article, I recently had some trouble with my email server and decided to outsource email administration to Amazons Simple Email Service (SES). 正如您在本文中所读到的 ,最近我的电子邮件服务器遇到了一些麻烦&…

rsync(六)命令中文手册

rsync(1) rsync(1)名称rsync - 一个快速、多功能的远程(和本地)文件拷贝工具摘要Local: rsync [OPTION...] SRC... [DEST]Access via remote shell:Pull: rsync [OPTION...] [USE…

NFS共享存储服务部署

服务端部署 1、检查服务器上是否已安装nfs及rpc,没有则需要安装检查rpm -qa rpcbind nfs-utils安装(已安装略过)yum install -y rpcbind nfs-utils################################################################2、编写nfs的配置文件cat…

区块链运作机制_什么是区块链及其运作方式?

区块链运作机制If youre interested in technology, theres a good chance you’ve probably heard the terms Bitcoin, Crypto, Ethereum, or even "distributed, decentralized ledgers."如果您对技术感兴趣,那么您很有可能已经听说过比特币&#xff0c…

敏捷管理之绩效考核方案

前段时间,公司签了年终奖确认。觉得公司发放年终奖完全是凭主观发放,没有事实依据,由此产生了对如何发放年终奖的一些想法。 奖金发放作为激励员工最直接的手段,往往也是让管理人员最难抉择的,而且很多公司&#xff0c…

序言

为什么要写这篇文章? 说起架构,刚入行的新人觉得是高大上的技术,有工作经验的一些人又觉得是虚无缥缈的东西,不能落实。具体有用没用,我不给答案,想通过写这么一个例子来还原场景,让读者自己判断…

kotlin编程语言_Kotlin初学者编程基础

kotlin编程语言什么是Kotlin? (What is Kotlin?) Kotlin is a programming language developed by Jetbrains, the company behind some of the world’s most popular IDEs like IntelliJ and Pycharm.Kotlin是Jetbrains开发的一种编程语言,该公司是In…

记一个蒟蒻的绝望

感觉现在…… 怎么讲,心挺冷的。 今天一月五号了。距离省选,时间好短啊。 我还有那么多东西不懂。甚至听都没听说过。 等到真正去省选的时候,我可能跟现在一样,什么都不会。 我的名字能不能被看到都不知道。哈,还进队呢…

671. 二叉树中第二小的节点

给定一个非空特殊的二叉树,每个节点都是正数,并且每个节点的子节点数量只能为 2 或 0。如果一个节点有两个子节点的话,那么该节点的值等于两个子节点中较小的一个。 更正式地说,root.val min(root.left.val, root.right.val) 总…

CentOS查询端口占用和清除端口占用的程序

1、查询端口号占用,根据端口查看进程信息 [rootserver2 ~]# lsof -i:80COMMAND PID USER FD TYPE DEVICE SIZE NODE NAMEhttpd 5014 root 3u IPv4 14346 TCP server2:http (LISTEN)2、根据进程号查看进程对应的可执行程序 ps -f -p 进程号# p…

Android基础夯实--你了解Handler有多少?

概述 对于刚入门的同学来说,往往都会对Handler比较迷茫,到底Handler是个什么样的东西。当然,可能对于一些有工作经验的工程师来说,他们也不一定能很准确地描述,我们来看下API的介绍。 Handler是用来结合线程的消息队列…

spring与springBoot不同之处

( 1)遵循“习惯优于配置”的原则,使用Spring Boot只需要很少的配置,大部分的时候我们直接使用默认的配置即可; (2)项目快速搭建,可以无需配置的自动整合第三方的框架; (3…

sketch-a-net_Adobe XD,Sketch,Figma,InVision-如何在2020年选择最佳设计软件

sketch-a-netComparing Adobe XD vs Sketch vs Figma vs InVision studio is a very common topic among designers who are looking for the best design software. 在寻求最佳设计软件的设计师中,比较Adobe XD,Sketch,Figma和InVision Stud…

merge intervals(合并间隔)

Given a collection of intervals, merge all overlapping intervals. For example,Given [1,3],[2,6],[8,10],[15,18],return [1,6],[8,10],[15,18]. 题目没有说所有间隔的start是依次增加的。所以,为了方便讨论,我们要将所有间隔按照start升序排列。因…

剑指 Offer 49. 丑数

我们把只包含质因子 2、3 和 5 的数称作丑数(Ugly Number)。求按从小到大的顺序的第 n 个丑数。 示例: 输入: n 10 输出: 12 解释: 1, 2, 3, 4, 5, 6, 8, 9, 10, 12 是前 10 个丑数。 说明: 1 是丑数。n 不超过1690。 解题思路 使用小根堆&#xf…