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采用socket模拟TCP通讯的实现方法
Nov 19 Python
python pycurl验证basic和digest认证的方法
May 02 Python
详解Python中的正则表达式
Jul 08 Python
python调用pyaudio使用麦克风录制wav声音文件的教程
Jun 26 Python
Python 实现Numpy中找出array中最大值所对应的行和列
Nov 26 Python
Pandas时间序列重采样(resample)方法中closed、label的作用详解
Dec 10 Python
Python实现把类当做字典来访问
Dec 16 Python
Pytorch 实现权重初始化
Dec 31 Python
通过实例了解Python str()和repr()的区别
Jan 17 Python
opencv中图像叠加/图像融合/按位操作的实现
Apr 01 Python
pyecharts在数据可视化中的应用详解
Jun 08 Python
Python内置类型集合set和frozenset的使用详解
Apr 26 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
web方式ftp
2006/10/09 PHP
PHP substr 截取字符串出现乱码问题解决方法[utf8与gb2312]
2011/12/16 PHP
apache中为php 设置虚拟目录
2014/12/17 PHP
纯PHP代码实现支付宝批量付款
2015/12/24 PHP
在laravel中使用with实现动态添加where条件
2019/10/10 PHP
通过JAVASCRIPT读取ASP设定的COOKIE
2006/11/24 Javascript
javascript一些实用技巧小结
2011/03/18 Javascript
jQuery 1.9移除了$.browser可以使用$.support来替代
2014/09/03 Javascript
JavaScript中的迭代器和生成器详解
2014/10/29 Javascript
浅谈Javascript如何实现匀速运动
2014/12/19 Javascript
javascript图片预加载实例分析
2015/07/16 Javascript
详谈javascript异步编程
2016/02/21 Javascript
jQuery 弹出层插件(推荐)
2016/05/24 Javascript
bootstrap——bootstrapTable实现隐藏列的示例
2017/01/14 Javascript
JS实现的将html转为pdf功能【基于浏览器端插件jsPDF】
2018/02/06 Javascript
jQuery超简单遮罩层实现方法示例
2018/09/06 jQuery
javascript+css实现进度条效果
2020/03/25 Javascript
使用 Python 获取 Linux 系统信息的代码
2014/07/13 Python
跟老齐学Python之不要红头文件(1)
2014/09/28 Python
使用Python脚本实现批量网站存活检测遇到问题及解决方法
2016/10/11 Python
Python中的Numpy矩阵操作
2018/08/12 Python
python中嵌套函数的实操步骤
2019/02/27 Python
使用Python画出小人发射爱心的代码
2019/11/23 Python
利用Python裁切tiff图像且读取tiff,shp文件的实例
2020/03/10 Python
澳大利亚在线生活方式商店:Mytopia
2018/07/08 全球购物
大学生学习生活的自我评价
2013/11/01 职场文书
《曹刿论战》教学反思
2014/03/02 职场文书
安全生产活动月方案
2014/03/09 职场文书
普通话演讲稿
2014/09/03 职场文书
关于运动会的广播稿50字
2014/10/17 职场文书
教师工作表现评语
2014/12/31 职场文书
简单的辞职信怎么写
2015/02/28 职场文书
装修公司工程部经理岗位职责
2015/04/09 职场文书
学术会议通知范文
2015/04/15 职场文书
2015初中政教处工作总结
2015/07/21 职场文书
创业计划书之家政服务
2019/09/18 职场文书