pythonrequests框架实例(Python requests模块实例用法)
类别:脚本大全 浏览量:1174
时间:2022-03-31 22:50:36 pythonrequests框架实例
Python requests模块实例用法1、Requests模块说明
Requests 是使用 Apache2 Licensed 许可证的 HTTP 库。用 Python 编写,真正的为人类着想。
Python 标准库中的 urllib2 模块提供了你所需要的大多数 HTTP 功能,但是它的 API 太渣了。它是为另一个时代、另一个互联网所创建的。它需要巨量的工作,甚至包括各种方法覆盖,来完成最简单的任务。
在Python的世界里,事情不应该这么麻烦。
Requests 使用的是 urllib3,因此继承了它的所有特性。Requests 支持 HTTP 连接保持和连接池,支持使用 cookie 保持会话,支持文件上传,支持自动确定响应内容的编码,支持国际化的 URL 和 POST 数据自动编码。现代、国际化、人性化。
2、Requests模块安装
点此下载
然后执行安装
|
$ python setup.py install |
个人推荐使用pip安装
|
pip install requests |
也可以使用easy_install安装
|
easy_install requests |
尝试在IDE中import requests,如果没有报错,那么安装成功。
3、Requests模块简单入门
|
#HTTP请求类型 #get类型 r = requests.get( 'https://github.com/timeline.json' ) #post类型 r = requests.post( "http://m.ctrip.com/post" ) #put类型 r = requests.put( "http://m.ctrip.com/put" ) #delete类型 r = requests.delete( "http://m.ctrip.com/delete" ) #head类型 r = requests.head( "http://m.ctrip.com/head" ) #options类型 r = requests.options( "http://m.ctrip.com/get" ) #获取响应内容 print r.content #以字节的方式去显示,中文显示为字符 print r.text #以文本的方式去显示 #URL传递参数 payload = { 'keyword' : '日本' , 'salecityid' : '2' } r = requests.get( "http://m.ctrip.com/webapp/tourvisa/visa_list" , params = payload) print r.url #示例为http://m.ctrip.com/webapp/tourvisa/visa_list?salecityid=2&keyword=日本 #获取/修改网页编码 r = requests.get( 'https://github.com/timeline.json' ) print r.encoding r.encoding = 'utf-8' #json处理 r = requests.get( 'https://github.com/timeline.json' ) print r.json() #需要先import json #定制请求头 url = 'http://m.ctrip.com' headers = { 'User-Agent' : 'Mozilla/5.0 (Linux; Android 4.2.1; en-us; Nexus 4 Build/JOP40D) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.166 Mobile Safari/535.19' } r = requests.post(url, headers = headers) print r.request.headers #复杂post请求 url = 'http://m.ctrip.com' payload = { 'some' : 'data' } r = requests.post(url, data = json.dumps(payload)) #如果传递的payload是string而不是dict,需要先调用dumps方法格式化一下 #post多部分编码文件 url = 'http://m.ctrip.com' files = { 'file' : open ( 'report.xls' , 'rb' )} r = requests.post(url, files = files) #响应状态码 r = requests.get( 'http://m.ctrip.com' ) print r.status_code #响应头 r = requests.get( 'http://m.ctrip.com' ) print r.headers print r.headers[ 'Content-Type' ] print r.headers.get( 'content-type' ) #访问响应头部分内容的两种方式 #Cookies url = 'http://example.com/some/cookie/setting/url' r = requests.get(url) r.cookies[ 'example_cookie_name' ] #读取cookies url = 'http://m.ctrip.com/cookies' cookies = dict (cookies_are = 'working' ) r = requests.get(url, cookies = cookies) #发送cookies #设置超时时间 r = requests.get( 'http://m.ctrip.com' , timeout = 0.001 ) #设置访问代理 proxies = { "http" : "http://10.10.10.10:8888" , "https" : "http://10.10.10.100:4444" , } r = requests.get( 'http://m.ctrip.com' , proxies = proxies) |
xml请求
|
#!/user/bin/env python #coding=utf-8 import requests class url_request(): def __init__(self): """ init """ if __name__=='__main__': headers = {'Content-type': 'text/xml'} XML = '<? xml version = "1.0" encoding = "utf-8" ?>< soap:Envelope xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd = "http://www.w3.org/2001/XMLSchema" xmlns:soap = "http://schemas.xmlsoap.org/soap/envelope/" >< soap:Body >< Request xmlns = "http://tempuri.org/" >< jme >< JobClassFullName >WeChatJSTicket.JobWS.Job.JobRefreshTicket,WeChatJSTicket.JobWS</ JobClassFullName >< Action >RUN</ Action >< Param >1</ Param >< HostIP >127.0.0.1</ HostIP >< JobInfo >1</ JobInfo >< NeedParallel >false</ NeedParallel ></ jme ></ Request ></ soap:Body ></ soap:Envelope >' url = 'http://jobws.push.mobile.xxxxxxxx.com/RefreshWeiXInTokenJob/RefreshService.asmx' r = requests.post(url,headers=headers,data=XML) #r.encoding = 'utf-8' data = r.text print data |
您可能感兴趣
- python入门知识点总结(深入解析Python小白学习操作列表)
- python进程管理教程(Python I/O与进程的详细讲解)
- thinkphp实战教程之博客技术学习(python3编写ThinkPHP命令执行Getshell的方法)
- python整型可以用什么表示(实例介绍Python中整型)
- python写一个二叉树(Python二叉搜索树与双向链表转换算法示例)
- python中怎么输入单引号(python三引号输出方法)
- python编写程序读写数据库(详解js文件通过python访问数据库方法)
- python开启两个线程(Python开启线程,在函数中开线程的实例)
- python识别验证码教程(Python3.5 + sklearn利用SVM自动识别字母验证码方法示例)
- python中的1和0(python把1变成01的步骤总结)
- python数字形式转换详解(Python3.5实现的罗马数字转换成整数功能示例)
- eval在python里面什么意思(python 为什么说eval要慎用)
- python进行回归分析(Python多项式回归的实现方法)
- python中split使用方法(python lxml中etree的简单应用)
- python 暗弱目标提取(Python提取频域特征知识点浅析)
- python随机生成时间戳(python时间序列按频率生成日期的方法)
- 精英律师 廖佳敏封印恋情曝光,顾婕马失前蹄 你个老不死的(廖佳敏封印恋情曝光)
- 以家人之名广受好评,剧情生动引起观众共鸣,演员张新成圈粉无数(以家人之名广受好评)
- 三兄妹感情再遇波折,人设接连崩塌 《以家人之名》剧情猜不透(三兄妹感情再遇波折)
- 《小敏家》金波想要复婚 这只是他圈套的第1步,更可恶的在后面(小敏家金波想要复婚)
- 小敏家 剧情离谱一锅乱炖,但他们俩绝对是这部剧的一大 亮点(剧情离谱一锅乱炖)
- 《倚天屠龙记》再遭翻拍,关晓彤主演赵敏,蒋劲夫演张无忌,你怎么看(倚天屠龙记再遭翻拍)
热门推荐
- php中变量定义规则(php use和include区别总结)
- 阿里云mysql升级注意事项(阿里云mysql空间清理的方法)
- linux 长模式查看文件(linux 查看文件系统类型实例方法)
- thinkphp继承model如何使用(Thinkphp5.0 框架使用模型Model添加、更新、删除数据操作详解)
- vue双向数据绑定js如何实现(纯JS如何实现vue.js下的双向绑定功能)
- phpstorm代码模板(phpStorm+XDebug+chrome 配置详解)
- C#获取上个月第一天和最后一天
- java集成钉钉发送消息(Python实现钉钉发送报警消息的方法)
- harborjob设置(harbor修改配置文件后重启操作)
- 国外虚拟主机怎么样(海外虚拟主机怎么挑选?)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9