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

一 Scrapy的post请求的实现

在爬虫文件中的爬虫类继承了Spider父类中的start_urls,该方法就可以对start_urls列表中的url发请求。

 def start_requests(self):for u in self.start_urls:yield scrapy.Request(url=u,callback=self.parse)
注意 该方法的默认是对起始的url发起get请求,想法post请求,则需要重写这个方法。

需求 对百度翻译进行post请求的获取

import scrapy
#发送post请求   这里的post请求没有实际的应用  直接使用request来发送post请求比较简单
#需求 通过百度翻译中的搜索 也就是post请求  这里搜索的内容是dog
class PostSpider(scrapy.Spider):name = 'post'# allowed_domains = ['www.xxx.com']start_urls = ['https://fanyi.baidu.com/sug']#这是父类中的方法  start_urls被封装到这里面来def start_requests(self):#注意 这是原先的# for url in self.start_urls:#     #直接发送get请求#     # yield scrapy.Request(url=url,callback=self.parse)data ={'kw':'dog'}#重写父类的方法start_urlsfor url in self.start_urls:#直接发送get请求yield scrapy.FormRequest(url=url,formdata=data,callback=self.parse)def parse(self, response):#这里拿到的是一个json  而不是源码 不需要使用response.xpathprint(response.text)

执行即可

二 五大核心组件的工作流程

(1)引擎(Scrapy Engine)

用来处理整个系统的数据流,触发事务(框架的核心)

(2)调度器(Scheduler)

用来接收引擎发过来的请求, 压入队列中, 并在引擎再次请求的时候返回.由它来决定下一个要抓取的网址是什么, 同时去除重复的网址

(3)下载器(Downloader)

用于下载网页内容, 并将网页内容返回给蜘蛛(Scrapy下载器是建立在twisted这个高效的异步模型上的)

(4)爬虫(Spiders)

爬虫是主要干活的, 用于从特定的网页中提取自己需要的信息.即所谓的实体(Item)

(5)项目管道(Pipeline)

负责处理爬虫从网页中抽取的实体,主要的功能是持久化实体、验证实体的有效性、清除不需要的信息。当页面被爬虫解析后,将被发送到项目管道,并经过几个特定的次序处理数据

转载于:https://www.cnblogs.com/mlhz/p/10473284.html

python爬虫之Scrapy框架的post请求和核心组件的工作 流程相关推荐

  1. Python爬虫之scrapy框架360全网图片爬取

    Python爬虫之scrapy框架360全网图片爬取 在这里先祝贺大家程序员节快乐,在此我也有一个好消息送给大家,本人已开通了微信公众号,我会把资源放在公众号上,还请大家小手动一动,关注过微信公众号, ...

  2. Python爬虫之Scrapy框架爬虫实战

    Python爬虫中Scrapy框架应用非常广泛,经常被人用于属于挖掘.检测以及自动化测试类项目,为啥说Scrapy框架作为半成品我们又该如何利用好呢 ?下面的实战案例值得大家看看. 目录: 1.Scr ...

  3. 19. python爬虫——基于scrapy框架爬取网易新闻内容

    python爬虫--基于scrapy框架爬取网易新闻内容 1.需求 [前期准备] 2.分析及代码实现 (1)获取五大板块详情页url (2)解析每个板块 (3)解析每个模块里的标题中详情页信息 1.需 ...

  4. python爬虫——用Scrapy框架爬取阳光电影的所有电影

    python爬虫--用Scrapy框架爬取阳光电影的所有电影 1.附上效果图 2.阳光电影网址http://www.ygdy8.net/index.html 3.先写好开始的网址 name = 'yg ...

  5. 14. python爬虫——基于scrapy框架爬取糗事百科上的段子内容

    python爬虫--基于scrapy框架爬取糗事百科上的段子内容 1.需求 2.分析及实现 3.实现效果 4.进行持久化存储 (1)基于终端指令 (2)基于管道 [前置知识]python爬虫--scr ...

  6. python爬虫之Scrapy框架,基本介绍使用以及用框架下载图片案例

    一.Scrapy框架简介 Scrapy是:由Python语言开发的一个快速.高层次的屏幕抓取和web抓取框架,用于抓取web站点并从页面中提取结构化的数据,只需要实现少量的代码,就能够快速的抓取. S ...

  7. Python爬虫:Scrapy 框架快速入门及实战演练

    文章目录 一.Scrapy 框架准备 二.快速启动项目 1.创建项目结构 2.创建爬虫 3.更改设置 4.爬虫类分析 5.编写启动脚本 三.爬虫实战 1.初步探索 2.优化数据模型 3.优化数据存储方 ...

  8. Python爬虫之scrapy框架介绍

    一.什么是Scrapy? Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架,非常出名,非常强悍.所谓的框架就是一个已经被集成了各种功能(高性能异步下载,队列,分布式,解析,持久化等) ...

  9. 18.Python爬虫之Scrapy框架

    scrapy 框架 01. Scrapy 链接 02. Scrapy 的爬虫流程 03. Scrapy入门 04. setting.py文件中的常用设置 4.1. logging模块的使用 4.2. ...

最新文章

  1. 【iOS官方文档翻译】iOS的蓝牙连接、数据接收及发送
  2. 理解离散傅立叶变换(一)
  3. python中间是什么意思_中间代码说明
  4. Unity5x编辑器的视图二
  5. Asp.Net Mvc3.0(MEF依赖注入实例)
  6. 【C语言】判断花括号{}是否匹配
  7. JS和Jquery获取和修改label的值
  8. mac docker安装linux,Mac上使用docker安装centos
  9. linux批量做信任,Linux 批量建立信任关系,实现ssh无password登陆的脚本
  10. hdu3949(线性基,求第k小的异或和
  11. Spring-jdbc-AbstractRoutingDataSource
  12. 介绍一下ajax后最好的返回结果的方式#34;Json#34;
  13. 《WF编程》系列之23 - 基本活动:IfElseActivity WhileActivity SequenceActivity
  14. 关于WM下创建和删除GPRS接入点
  15. 2602 最短路径问题
  16. CAS单点登录:CAS服务端搭建
  17. Flying Saucer 不支持中文,换行,粗体,CheckBox多选框的解决方案
  18. 马云给正在奋斗的人的经典语句
  19. 埃拉托色尼筛选法------筛选质数
  20. 荣耀最强拍照手机诞生:荣耀20系列塑造的“潮流科技宇宙”

热门文章

  1. 2021-2027年中国手机天线行业竞争格局分析及发展趋势预测报告
  2. 浅显易懂 Makefile 入门 (06)— 文件名操作函数(dir、notdir、suffix、basename、addsuffix、addperfix、join、wildcard)
  3. docker安装Mysql5.7以及远程登陆链接配置
  4. 发送快递:配置静态路由
  5. Adam那么棒,为什么还对SGD念念不忘 (1) —— 一个框架看懂优化算法
  6. TVM性能评估分析(一)
  7. 国内操作系统OS分析(下)
  8. Python:numpy实现生成随机数,忽略warnings
  9. java.lang.IllegalArgumentException: column ‘_id‘ does not exist
  10. 工具推荐:Astah Community 绘制图形