Python-网络爬虫模块-requests模块之请求
Python原生库urllib库不太方便使用,本着"人生苦短, 我用Python"的珍惜生命精神, 基于urllib, 开发了一个对人类来说, 更好使用的一个库——requests
requests模块的使用方法基本上是requests.方法(method,url,**kwargs),括号中传递各种参数的形式来实现不同的应用场景。
各种请求方法:
- request(method,url,**kwargs)
- get(url, params=None, **kwargs)
- post(url, data=None, json=None, **kwargs)
- head(url, **kwargs)
- options(url, **kwargs)
- put(url, data=None, **kwargs)
- patch(url, data=None, **kwargs)
- delete(url, **kwargs)
据源代码显示,下面七种也是基于request方法实现的
request方法详细介绍:
requests.request(method,url,**kwargs)
参数详解:
- method:请求类型
- url:请求的url
**kwargs:动态参数,都是可选参数
- params:
参数类型:字典或bytes
作用:一般用于get请求时传递数据
- data:
参数类型:字典,元祖列表、bytes、类文件对象
作用:放在请求体中,一般用于post请求传递数据,会自动把数据转换成为&符号连接的形式,如果需要json字符串格式, 需要手动处理用json模块转换, 也可以借助另一个参数json
- json:
参数类型:字典
作用:放在请求体中,一般用于post请求传递数据,会自动把字典转换成json字符串格式
- headers
参数类型:字典
作用:定义HTTP请求头描述
- cookies:
参数类型:字典、Cookiejar
作用:搞定发送给服务器的cookie
- files
参数类型:字典类型1:
{"name": file-like-objects}
字典类型2
{"name": file-tuple} name:服务器接收文件信息的字段名字
file-tuple:('filename', fileobj, 'content_type', custom_headers)
filename:文件名,不用需索引文件
fileobj:文件句柄
content_type:文件类型
custom_headers:文件头部信息
作用:向服务器上传文件
- auth
参数类型:元祖
作用:用于HTTP Basic/Digest/Custom HTTP授权
- timeout
参数类型:float:超时时长
tuple(连接超时,读取超时)
作用:控制请求超时时间
- allow_redirects
参数类型:bool (默认为True)
作用:控制是否支持重定向
- proxies
参数类型:字典 {"协议":URL}
作用:设置请求代理
- verify
参数类型:bool 是否验证SSL ,默认为True
string CA证书存放的路径
作用:验证HTTPS请求
- cert
参数类型:string ssl client cert file(.pem)
tuple ("cent":"key")
作用:客户端验证
- stream
参数类型:bool
作用:相应的内容,是否以分流式分批下载
requests.request()的方法介绍就这么多,具体应用方式,代码操练
其他的方法都是在内部调用了request方法,使用方式不需要加入method参数,其他都一样的
Python-网络爬虫模块-requests模块之请求的更多相关文章
- 04.Python网络爬虫之requests模块(1)
引入 Requests 唯一的一个非转基因的 Python HTTP 库,人类可以安全享用. 警告:非专业使用其他 HTTP 库会导致危险的副作用,包括:安全缺陷症.冗余代码症.重新发明轮子症.啃文档 ...
- Python网络爬虫之requests模块(1)
引入 Requests 唯一的一个非转基因的 Python HTTP 库,人类可以安全享用. 警告:非专业使用其他 HTTP 库会导致危险的副作用,包括:安全缺陷症.冗余代码症.重新发明轮子症.啃文档 ...
- 04,Python网络爬虫之requests模块(1)
引入 Requests 唯一的一个非转基因的 Python HTTP 库,人类可以安全享用. 警告:非专业使用其他 HTTP 库会导致危险的副作用,包括:安全缺陷症.冗余代码症.重新发明轮子症.啃文档 ...
- 06.Python网络爬虫之requests模块(2)
今日内容 session处理cookie proxies参数设置请求代理ip 基于线程池的数据爬取 知识点回顾 xpath的解析流程 bs4的解析流程 常用xpath表达式 常用bs4解析方法 引入 ...
- Python网络爬虫之requests模块(2)
session处理cookie proxies参数设置请求代理ip 基于线程池的数据爬取 xpath的解析流程 bs4的解析流程 常用xpath表达式 常用bs4解析方法 引入 有些时候,我们在使用爬 ...
- Python网络爬虫之requests模块
今日内容 session处理cookie proxies参数设置请求代理ip 基于线程池的数据爬取 知识点回顾 xpath的解析流程 bs4的解析流程 常用xpath表达式 常用bs4解析方法 引入 ...
- 04 Python网络爬虫 <<爬取get/post请求的页面数据>>之requests模块
一. urllib库 urllib是Python自带的一个用于爬虫的库,其主要作用就是可以通过代码模拟浏览器发送请求.其常被用到的子模块在Python3中的为urllib.request和urllib ...
- 网络爬虫之requests模块的使用+Github自动登入认证
本篇博客将带领大家梳理爬虫中的requests模块,并结合Github的自动登入验证具体讲解requests模块的参数. 一.引入: 我们先来看如下的例子,初步体验下requests模块的使用: ...
- Python学习---爬虫学习[requests模块]180411
模块安装 安装requests模块 pip3 install requests 安装beautifulsoup4模块 [更多参考]https://blog.csdn.net/sunhuaqiang1/ ...
- python网络爬虫《爬取get请求的页面数据》
一.urllib库 urllib是python自带的一个用于爬虫的库,其主要作用就是可以通过代码模拟浏览器发送请求.其常被用到的子模块在python3中的为urllib.request和urllib. ...
随机推荐
- Javascript高级程序设计复习——第五章引用类型 【原创】
5.1 Object类型 1:创建Object实例的两种方式 ①new构造法 var obj1 = new Object(); 注意大写!不传递参数时可以省略圆括号 obj1.hehe = &quo ...
- java之集合Collection 3个例子
package cn.itcast_01; import java.util.ArrayList; import java.util.Collection; /* * 集合的由来: * 我们学习的是面 ...
- Sublime Text 3 Build 3065 License key 注册码 秘钥
-– BEGIN LICENSE -– Andrew Weber Single User License EA7E-855605 813A03DD 5E4AD9E6 6C0EEB94 BC99798F ...
- [爬虫]Windows下如何安装python第三方库lxml
lxml是个非常有用的python库,它可以灵活高效地解析xml与BeautifulSoup.requests结合,是编写爬虫的标准姿势. 但是,当lxml遇上Windows,简直是个巨坑.掉在安装陷 ...
- 原生JS和JQuery的区别
1.原生js和jQuery的入口函数加载模式不同 原生js等页面dom加载完成并且图片等资源也加载完成之后才会执行: jQuery则是等页面dom加载完成执行,不会等图片等资源也加载完成: (也就是说 ...
- ATM机
ATM 要求 示例代码: https://github.com/triaquae/py_training/tree/master/sample_code/day5-atm
- 查询订阅某topic的所有consumer group(Java API)
在网上碰到的问题,想了下使用现有的API还是可以实现的. 首先,需要引入Kafka服务器端代码,比如加入Kafka 1.0.0依赖: Maven <dependency> <grou ...
- sort.go
package clientv3 type SortTarget int type SortOrder int const ( SortNone SortOrder = iota So ...
- Hadoop问题:DataNode进程不见了
DataNode进程不见了 问题描述 最近配置Hadoop的时候出现了这么一个现象,启动之后,使用jps命令之后是这样的: 看不到DataNode进程,但是能够正常的工作,是不是很神奇啊? 在一番 ...
- bzoj 1426 收集邮票
f[i]:当前已拥有i种邮票,还需要买的邮票数的期望值. g[i]:当前已拥有i种邮票,还需要的钱的期望值. 每张邮票初始都是1元钱,每买一张邮票,还没购买的邮票每张都涨价1元. f[i]=1+(n ...