scrapy的使用-Request
Request对象在我们写爬虫,爬取一页的数据需要重新发送一个请求的时候调用。这个类需要传递一些参数。其中比较常用的参数有:
1.url 请求的url对象
2.callback 在下载器下载完相应的数据后执行的回调函数
3.method 请求的方式,默认为GET方法,可以设置为其他方法
4.meta 比较常用,用于在不同的请求之间传递数据用的.Request.meta属性的初始值。如果给定,则此参数中传递的dict将被浅拷贝。
5.encoding 编码。默认的为 utf-8,使用默认的就可以了。
6.dot_filter 表示不有调度器过滤,在执行多次重复的请求的时候就用的比较多。
7.cookie 请求的cookie。
8.errback 在发生错误的时候执行的函数。
Response对象一般是有Scrapy给你自动构建,因此开发者不需要关心如何创建Response对象,而是如何使用它,Response对象有很多属性,可以用开提取数据,主要有一下属性:
1.meta 从其他请求传过来的meta属性,可以用来保持多个请求之间的数据连接。
2.encoding 返回当前字符串编码和解码的格式。
3.text 将返回来的数据作为unicode字符串返回。
4.xpath xpath选择器。
5.css css选择器。
6.body 将返回来的数据作为bytes字符串返回。
7.status 响应的HTTP状态。默认为200。
8.flags 一个包含属性初始值的 Response.flags列表。如果给定,列表将被浅拷贝
9.request 属性的初始值Response.request。这代表Request生成此响应。
scrapy的使用-Request的更多相关文章
- scrapy中的request
scrapy中的request 初始化参数 class scrapy.http.Request( url [ , callback, method='GET', headers, body, cook ...
- Scrapy爬虫入门Request和Response(请求和响应)
开发环境:Python 3.6.0 版本 (当前最新)Scrapy 1.3.2 版本 (当前最新) 请求和响应 Scrapy的Request和Response对象用于爬网网站. 通常,Request对 ...
- [转]scrapy中的request.meta
作者:知乎用户链接:https://www.zhihu.com/question/54773510/answer/146971644 meta属性是字典,字典格式即{'key':'value'},字典 ...
- Scrapy中的Request和日志分析
Scrapy.http.Request 自动去重,根据url的哈希值,进行去重 属性 meta(dict) 在不同的请求之间传递数据,dict priority(int) 此请求的优先级(默认为0 ...
- Scrapy中的Request和Response
Request Request 部分源码: # 部分代码 class Request(object_ref): def __init__(self, url, callback=None, metho ...
- scrapy中的Request和Response对象
前言: 如果框架中的组件比做成是人的各个器官的话,那个Request和Response就是血液,Item就是代谢产物 Request对象: 是用来描述一个HTTP请求,其构造参数有 url 请求的UR ...
- Scrapy 中的 Request 对象和 Respionse 对象
1.Request 对象 Request 对象用来描述一个 HTTP 请求,下面是其构造方法的参数列表 Request(url, [, callback, method='Get', headers, ...
- 爬虫框架Scrapy之Request/Response
Request yield scrapy.Request(url, self.parse) Request 源码: # 部分代码 class Request(object_ref): def __in ...
- Scrapy进阶知识点总结(一)——基本命令与基本类(spider,request,response)
一.常见命令 scrapy全局命令可以在任何地方用,项目命令只能在项目路径下用 全局命令: 项目命令: startproject crawl genspider check settings list ...
随机推荐
- css 导航样式
html 结构 <div class="nav-menu float-r"> <ul class="menu-item"> <l ...
- 用 Flask 来写个轻博客 (2) — Hello World!
Blog 项目源码:https://github.com/JmilkFan/JmilkFan-s-Blog 目录 目录 前文列表 扩展阅读 实现最简单的 Flask 应用 创建 config.py 文 ...
- Servlet源码分析
Servlet API的核心就是javax.servlet.Servlet接口,所有的Servlet 类(抽象的或者自己写的)都必须实现这个接口.在Servlet接口中定义了5个方法,其中有3个方法是 ...
- 1022 Digital Library (30 分)
1022 Digital Library (30 分) A Digital Library contains millions of books, stored according to thei ...
- iptables默认规则
iptables默认规则 *filter :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [34:4104] -A INPUT -m ...
- JQuery日记6.7 Javascript异步模型(二)
异步模型看起来非常美,但事实上它也是有天生缺陷的.看以下代码 try { setTimeout( function(){ throw new Error( '你抓不到我的!' ); }, 100); ...
- php的生命周期的概述
1. PHP是随着WEB服务器(apache)的启动而运行的: 2. PHP通过mod_php5.so()模块和服务器(apache)相连 3. PHP总共有三个模块:内核.Zend引擎.以及扩展层: ...
- linux每日命令(3):which命令
这个命令我也神佑体会它的用处,在linux要查找某个文件,但不知道放在哪里了,可以使用下面的一些命令来搜索: which 查看可执行文件的位置. whereis 查看文件的位置. locate ...
- redis主从复制和哨兵
摘自:https://www.cnblogs.com/leeSmall/p/8398401.html 一.Redis主从复制 主从复制:主节点负责写数据,从节点负责读数据,主节点定期把数据同步到从节点 ...
- vue组件基础之父子传值
可以看出数据从后端获取过来,最外层的父组件接收数据,子组件不能直接获取,必须由父组件传递,此时使用props,并且父组件的值更新后,子组件的值也会随之更新,但是反过来通过修改子组件props来影响父组 ...