Python Requests库基本用法示例


Posted in Python onAugust 20, 2018

本文实例讲述了Python Requests库基本用法。分享给大家供大家参考,具体如下:

requests是python的一个http client库,提供了一套简捷的API供开发者使用。下面简单介绍一下其安装和使用。这里是官方文档。

0 安装

pip install requests

1 发送请求

r=requests.get('https://www.baidu.com')
print r.status_code,r.text
r=requests.post('http://httpbin.org/post')
r=requests.put('http://httpbin.org/put')
r=requests.delete('http://httpbin.org/delete')
r=requests.head('http://httpbin.org/head')
r=requests.options('http://httpbin.org/')

2 发送get参数

param={'key1':value1,'key2':value2}
r=requests.get('http://www.baidu.com/',params=param)

3 发送post参数

param={'key1':value1,'key2':value2}
r=requests.post('http://www.baidu.com/',params=param) #表单格式
r=requests.post('http://www.baidu.com/',json=param) #json格式数据
file= {'file':open('1.txt','rb')}
r=reuqest.post('http://httpbin.org/post',files=file)

4 文件下载

with open('1.pic','wb') as pic:
  for chunk in response.iter_content(size):
    pic.write(chunk)

5 携带header

header={'key1':value1,'key2':value2}
r=requests.get('http://www.baidu.com/',headers=header)

6 携带cookie

cookie={'key1':value1,'key2':value2}
r=requests.get('http://www.baidu.com/',cookies=cookie)

7 重定向

默认requests是允许重定向的,并将重定向的历史保存在response.history数组中
如果不需要重定向,可以通过开关来关闭

r=requests.get('http://www.baidu.com/',allow_redirects=False)

8 使用代理

使用socks代理需要安装三方扩展包

pip install requests[socks]
proxy={
  'http':'http://127.0.0.1:8000',
  'https':'https://127.0.0.1:8080'
  'http':'socks5://user:pass@127.0.0.1:8132'
}
r=requests.get('https://www.github.com/',proxies=proxy)

9 设置连接超时

r=requests.get('http://www.baidu.com/',timeout=2.5)

10 ssl证书

证书验证

requests.get('https://kennethreitz.com', verify=True)
requests.get('https://kennethreitz.com', cert=('/path/server.crt', '/path/key'))

如果指定本地证书及密钥,则密钥需要是解密的。

11 requests对象

r.url
r.text
r.headers

12 Response对象

response.request 对应的请求对象
response.raw socket上直接获得的数据
response.text 根据响应头进行解码的文本数据
response.content 不解码,返回二进制数据
response.json() 对返回数据进行json解码
response.headers 词典形式存储返回的headers
response.cookies 词典形式存储返回的cookies

更多关于Python相关内容可查看本站专题:《Python Socket编程技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python处理json数据中的中文
Mar 06 Python
PHP魔术方法__ISSET、__UNSET使用实例
Nov 25 Python
python使用PIL缩放网络图片并保存的方法
Apr 24 Python
Python的Django应用程序解决AJAX跨域访问问题的方法
May 31 Python
Python堆排序原理与实现方法详解
May 11 Python
浅谈python的深浅拷贝以及fromkeys的用法
Mar 08 Python
python 中pyqt5 树节点点击实现多窗口切换问题
Jul 04 Python
在pytorch中实现只让指定变量向后传播梯度
Feb 29 Python
在Mac中PyCharm配置python Anaconda环境过程图解
Mar 11 Python
python网络编程socket实现服务端、客户端操作详解
Mar 24 Python
一篇文章教你用python画动态爱心表白
Nov 22 Python
Python使用openpyxl复制整张sheet
Mar 24 Python
Django中使用第三方登录的示例代码
Aug 20 #Python
基于Django框架利用Ajax实现点赞功能实例代码
Aug 19 #Python
分析python请求数据
Aug 19 #Python
浅谈django orm 优化
Aug 18 #Python
django连接mysql配置方法总结(推荐)
Aug 18 #Python
python画一个玫瑰和一个爱心
Aug 18 #Python
python爱心表白 每天都是浪漫七夕!
Aug 18 #Python
You might like
php 获取完整url地址
2008/12/20 PHP
一步一步学习PHP(3) php 函数
2010/02/15 PHP
深入解析php中的foreach问题
2013/06/30 PHP
解决PHP里大量数据循环时内存耗尽的方法
2015/10/10 PHP
php编程每天必学之表单验证
2016/03/01 PHP
CI框架扩展系统核心类的方法分析
2016/05/23 PHP
PHP生成加减算法方式的验证码实例
2018/03/12 PHP
php框架CodeIgniter主从数据库配置方法分析
2018/05/25 PHP
JS获取IUSR_机器名和IWAM_机器名帐号的密码
2006/12/06 Javascript
javascript学习笔记(十三) js闭包介绍(转)
2012/06/20 Javascript
javaScript矢量图表库-gRaphael几行代码实现精美的条形图/饼图/点图/曲线图
2013/01/09 Javascript
js函数排序的实例代码
2013/07/01 Javascript
纯javascript模仿微信打飞机小游戏
2015/08/20 Javascript
Labelauty?jQuery单选框/复选框美化插件分享
2015/09/26 Javascript
js和jQuery设置Opacity半透明 兼容IE6
2016/05/24 Javascript
微信小程序表单验证错误提示效果
2017/05/19 Javascript
MUI实现上拉加载和下拉刷新效果
2017/06/30 Javascript
原生JS实现循环Nodelist Dom列表的4种方式示例
2018/02/11 Javascript
VUE 动态组件的应用案例分析
2019/12/02 Javascript
微信小程序连接服务器展示MQTT数据信息的实现
2020/07/14 Javascript
[01:11:21]DOTA2-DPC中国联赛 正赛 Phoenix vs CDEC BO3 第三场 3月7日
2021/03/11 DOTA
Python编程实现输入某年某月某日计算出这一天是该年第几天的方法
2017/04/18 Python
Python实现迭代时使用索引的方法示例
2018/06/05 Python
一行Python代码制作动态二维码的实现
2019/09/09 Python
通过python3实现投票功能代码实例
2019/09/26 Python
django xadmin 管理器常用显示设置方式
2020/03/11 Python
scrapy框架携带cookie访问淘宝购物车功能的实现代码
2020/07/07 Python
python3爬虫中多线程进行解锁操作实例
2020/11/25 Python
水上运动奥特莱斯:Wasterports Outlet
2018/08/08 全球购物
Linux的主要特性
2014/10/06 面试题
环境科学专业个人求职信
2013/09/26 职场文书
产品质量承诺书范文
2014/03/27 职场文书
《记金华的双龙洞》教学反思
2014/04/19 职场文书
2015年乡镇党务公开工作总结
2015/05/19 职场文书
Nginx同一个域名配置多个项目的实现方法
2021/03/31 Servers
JavaScript嵌入百度地图API的最详细方法
2021/04/16 Javascript