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中的闭包详细介绍和实例
Nov 21 Python
Python注释详解
Jun 01 Python
Python写的一个定时重跑获取数据库数据
Dec 28 Python
Python单例模式实例详解
Mar 01 Python
基于Django的python验证码(实例讲解)
Oct 23 Python
Python网络编程之TCP与UDP协议套接字用法示例
Feb 02 Python
Django Web开发中django-debug-toolbar的配置以及使用
May 06 Python
python爬虫学习笔记之pyquery模块基本用法详解
Apr 09 Python
基于python实现检索标记敏感词并输出
May 07 Python
浅析Python 简单工厂模式和工厂方法模式的优缺点
Jul 13 Python
PyChon中关于Jekins的详细安装(推荐)
Dec 28 Python
python常量折叠基础知识点讲解
Feb 28 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
广播爱好者需要了解的天线知识
2021/03/01 无线电
基于HTTP长连接的"服务器推"技术的php 简易聊天室
2009/10/31 PHP
php数组和链表的区别总结
2019/09/20 PHP
JQuery入门——用one()方法绑定事件处理函数(仅触发一次)
2013/02/05 Javascript
深入剖析JavaScript中的枚举功能
2014/03/06 Javascript
详解JavaScript中的客户端消息框架设计原理
2015/06/24 Javascript
jQuery+css3实现转动的正方形效果(附demo源码下载)
2016/01/27 Javascript
理解javascript中的严格模式
2016/02/01 Javascript
jQuery qrcode生成二维码的方法
2016/04/03 Javascript
JS控制文本域只读或可写属性的方法
2016/06/24 Javascript
js本地图片预览实现代码
2016/10/09 Javascript
Vue.JS入门教程之事件监听
2016/12/01 Javascript
非常实用的vue导航钩子
2017/03/20 Javascript
js保留两位小数方法总结
2018/01/31 Javascript
JS实现的判断方法、变量是否存在功能示例
2020/03/28 Javascript
记录一次开发微信网页分享的步骤
2019/05/07 Javascript
bootstrap-closable-tab可实现关闭的tab标签页插件
2020/08/09 Javascript
在python中利用KNN实现对iris进行分类的方法
2018/12/11 Python
利用python修改json文件的value方法
2018/12/31 Python
PyQt5图形界面播放音乐的实例
2019/06/17 Python
Python+threading模块对单个接口进行并发测试
2019/06/25 Python
详谈tensorflow gfile文件的用法
2020/02/05 Python
解决pyPdf和pyPdf2在合并pdf时出现异常的问题
2020/04/03 Python
Linux管理员面试经常问道的相关命令
2014/12/12 面试题
Java Servlet API中forward() 与redirect()的区别
2014/04/20 面试题
教育学专业毕业生的自我评价
2013/11/21 职场文书
新教师岗前培训方案
2014/06/05 职场文书
应用外语系自荐信
2014/06/26 职场文书
企业年检委托书范本
2014/10/14 职场文书
2015年度党风廉政建设工作情况汇报
2015/01/02 职场文书
个人收入证明范本
2015/06/12 职场文书
社区服务理念口号
2015/12/25 职场文书
Python 如何解决稀疏矩阵运算
2021/05/26 Python
十大经典日本动漫排行榜 海贼王第三,犬夜叉仅第八
2022/03/18 日漫
不负正版帝国之名 《重返帝国》引领SLG手游制作新的标杆
2022/04/07 其他游戏
2022年显卡天梯图(6月更新)
2022/06/17 数码科技