一、工作流程

1、调度器:从处理器接收的任务队列,在数据库中查找,判断该任务是否为新任务或者需要重新爬取的任务,再根据优先级对任务进行重新排序,再交给抓取器进行处理。
2、抓取器:负责获取网页内容,并将结果发给处理器处理。
3、处理器:主要是负责对数据提取,以及脚本解析(主要用的是PyQuery提取信息)
4、结果工作者result worker(可选):主要是重写数据的储存,默认是存在resultdb中。
5、phantomjs:作用类似scrapy中的中间件,主要用于处理js脚本,返回新的响应内容给fetcher
pyspider 中的数据流如上图所示:
1、当您按下 WebUI 上的运行按钮时,会执行脚本中的on_start方法,并将on_start 方法作为项目的入口提交给调度器。
2、调度程序将这个带有Data URI 的 on_start 方法作为普通任务分派给 Fetcher。
3、Fetcher 发出请求和响应(对于 Data URI,它是一个虚假的请求和响应,但与其他正常任务没有区别),然后馈送到 Processor,也就是把响应结果发给处理器。
4、处理器调用 on_start 方法并生成一些新的 URL 以进行抓取。 Processor 向Scheduler 发送一条反馈消息,告诉调度器这个任务已经完成,把新的任务通过消息队列发送给Scheduler(这里大多数情况下on_start 没有结果。如果有结果,Processor 将它们发送到result_queue)。
5、调度器接收到新任务,在数据库中查找,判断该任务是新任务还是需要重新爬取,如果是,则放入任务队列。按顺序分派任务给处理器processor。
6、该过程重复(从第 3 步开始)并且不会停止,直到 WWW 死了

Pyspider框架工作流程及常见问题相关推荐

  1. 工作流程及常见问题,想做工作认真看完

    工作流程及常见问题,想做工作认真看完 特别声明:所招聘的岗位不收任何费用!(有任何收费行为请投诉!谢谢配合) 因业务需要急招兼职-需求会上网,有购物经验者优先!承诺不收取任何费用! 1. 有上网条件, ...

  2. 工作流程及常见问题,想做工请作认真看完

    工作流程及常见问题,想做工作认真看完 特别声明:永邦隆科技所招聘的岗位不收任何费用!(有任何收费行为请投诉!谢谢配合) 因业务需要急招兼职-需求会上网,有购物经验者优先!承诺不收取任何费用! 1. 有 ...

  3. 2015年工作流程及常见问题,应聘人员请详细了解!

    2015年工作流程及常见问题,应聘人员请详细了解!   特别声明:所招聘的岗位不收任何费用!(有任何收费行为请投诉!谢谢配合!) 据统计,每天有1万人上网开店,网店数量已经突破百万大关!一个没有信誉跟 ...

  4. 爬爬爬——了解scrapy框架工作流程

    丧丧的春节过了,又到了学习的季节--熟悉scrapy框架 为什么选择用框架: 不用重复造轮子,scrapy 底层是异步框架 twisted ,吞吐量高. 1.scrapy 的基础概念: scrapy ...

  5. 请了解工作流程及常见问题!!!

    诚聘网店刷手,不限时间地点,只要有上网条件就可以工作,兼职.全职皆可 真的有心要做兼职的人员,请认真看完,有不明白的再联系客服,谢谢! 好消息:第一次做任务的兼职人员都有一次申请双倍佣金的机会,不要错 ...

  6. 【struts2】struts2工作流程

    一.struts2的线程安全 struts1中的所有Action都只有一个实例,该Action实例会被反复使用.JavaWeb都是使用线程来处理用户请求(request)的,一次请求对应一个处理线程. ...

  7. python爬虫之Scrapy框架的post请求和核心组件的工作 流程

    python爬虫之Scrapy框架的post请求和核心组件的工作 流程 一 Scrapy的post请求的实现 在爬虫文件中的爬虫类继承了Spider父类中的start_urls,该方法就可以对star ...

  8. Scrapy框架的概念、作用和工作流程

    1. scrapy的概念         Scrapy是一个Python编写的开源网络爬虫框架.它是一个被设计用于爬取网络数据.提取结构性数据的框架. Scrapy是一个为了爬取网站数据,提取结构性数 ...

  9. Yarn框架和工作流程研究

    一.概述     将公司集群升级到Yarn已经有一段时间,自己也对Yarn也研究了一段时间,现在开始记录一下自己在研究Yarn过程中的一些笔记.这篇blog主要主要从大体上说说Yarn的基本架构以及其 ...

最新文章

  1. Dojo QuickStart 快速入门教程 (1) Why Dojo
  2. 《python3网络爬虫开发实战》--基本库的使用
  3. SQL Server学习1(建数据库,建表,建约束)
  4. 2019潜江职称计算机考试,2019湖北事业单位联考潜江地区笔试成绩分析
  5. LeetCode刷题(50)--Word Search
  6. BackgroundWorker简单实用(简便的异步操作)
  7. 扇贝和不背单词_你还没找到中意的背单词APP?我都试过,我来帮你盘点盘点
  8. poj1691 Painting A Board
  9. linux下proc文件的读写(部分转载)
  10. 干净卸载VS2015
  11. 三星s8html查看器,三星S8/S8+ 刷机软件工具
  12. Eterm协议破解,Java后端二次开发,实现ERP系统提取票号
  13. 给大龄程序员的4种竞争力策略
  14. PTA 愿天下有情人都是失散多年的兄妹 (二叉树遍历)
  15. android微信小程序自动填表_微信小程序自动化实战(一)
  16. parameter缩略语_通信缩略语和术语
  17. CountDownTimer 一步实现最简单的倒计时控件
  18. CAcls命令在提权中的使用
  19. C# 2.0 Graphics 画雪人
  20. 【P2629】好消息,坏消息(前缀和+单调队列优化DP)

热门文章

  1. 实用:外出旅游日语大全
  2. 百度云直链下载(不用客户端网页端直接下载且速度挺快的)
  3. 在win7上利用虚拟磁盘隐藏文件
  4. Problem : 暴力摩托
  5. 使用iTools、PP助手清理垃圾前后目录对比图
  6. 西蒙说游戏 计算机,编程课不用电脑?因为芬兰教师将编程当做一种思想来教...
  7. 机器人开发--SICK激光雷达系列
  8. React高阶组件(HOC)模型理论与实践
  9. 远程桌面连接出错「用户账户限制会阻止你登录...」
  10. 【GB/T 12604.4-2005】无损检测术语--声发射检测