网易首页 > 网易号 > 正文 申请入驻

Python - 优雅而简单地完成http请求

0
分享至

前言

在运维过程中,我们可能需要通过某些http接口提交一些数据到我们的资产管理系统、监控系统等,我们可以使用python的第三方库requests来进行操作,优雅而简单。

安装

直接使用pip就可以安装:

pip install requests
使用

1、发送请求

import requests #导入requests,然后就可以为所欲为了

#发送get请求

r0 = requests.get("http://yunweicai.com")

#发送post请求

r1 = requests.post("http://yunweicai.com",data={key:value})

#发送post请求,带json串

json_data = {"user":"yunweicai","op":"post"}

r11 = requesets.post("http://yunweicai.com",json=json_data)

#put、delete、head、optiions请求也很简单

r = requests.put('http://yunweicai.com/put', data = {'key':'value'})

r = requests.delete('http://yunweicai.com/delete')

r = requests.head('http://yunweicai.com/get')

r = requests.options('http://yunweicai.com/get')

2、URL参数

URL 的查询字符串(query string)传递某种数据。如果你是手工构建 URL,那么数据会以键/值对的形式置于 URL 中,跟在一个问号的后面。例如, yunweicai.com/get?key=val。

requests库操作就比较优雅了,requests 允许你使用 params 关键字参数,以一个字符串字典来提供这些参数。

payload = {'key1': 'value1', 'key2': 'value2'}

r = requests.get("http://yunweicai.com/get", params=payload)

通过打印输出该 URL,你能看到 URL 已被正确编码:

print(r.url)

3、相应内容

通过发送请求返回的对象,我们就可以获取到服务器对我们的相应内容了。Requests 会自动解码来自服务器的内容。请求发出后,Requests 会基于 HTTP 头部对响应的编码作出有根据的推测。当你访问 r.text 之时,Requests 会使用其推测的文本编码。

你可以找出 Requests 使用了什么编码,并且能够使用 r.encoding 属性来改变它:

>>> r.encoding
'utf-8'
>>> r.encoding = 'ISO-8859-1'

如果返回的json串,可以直接使用r.json()获取到字典对象进行操作

如果响应内容是二进制呢?

对于响应内容是非文本请求,可以使用r.content访问到内容。

例如,以请求返回的二进制数据创建一张图片,你可以使用如下代码:

>>> from PIL import Image
>>> from io import BytesIO
>>> i = Image.open(BytesIO(r.content))

4、定制请求头

有些请求需要有指定的请求头才能正确获取到内容。

headers = {'user-agent': 'my-app/0.0.1'}

r= requests.get("http://yunweicai.com",headers=headers)

5、cookies

有些请求需要依赖于cookies来完成操作,就需要从上个请求中获取到cookies然后传入下一个请求:

r0 = requests.get("http://yunweicai.com/login")

r1 = requests.post("http://yunweicai.com/asset",data={"hostname":"yunweicai",cookies= r0.cookies}

总结

使用requests是不是觉得很简单而优雅呢?

人生苦短,我用Python!

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
闹大了!成都某地一群印度人举行印度节日 网友:有点接受不了

闹大了!成都某地一群印度人举行印度节日 网友:有点接受不了

刘哥谈体育
2024-03-28 11:33:14
TVB玩大了,内地绝对不敢这么拍

TVB玩大了,内地绝对不敢这么拍

港叔
2024-03-28 10:43:03
印度1000架军机演习恐吓中方?300架歼20严阵以待,印挑衅就团灭

印度1000架军机演习恐吓中方?300架歼20严阵以待,印挑衅就团灭

乐阳聊军事
2024-03-27 13:47:17
小米 SU7 车型可选三款轮毂+四种轮胎,Max 续航达 800 公里

小米 SU7 车型可选三款轮毂+四种轮胎,Max 续航达 800 公里

IT之家
2024-03-27 22:20:27
如果小米汽车真这么定价,就是饮鸩止渴

如果小米汽车真这么定价,就是饮鸩止渴

户外小阿隋
2024-03-17 09:36:56
土耳其1-6惨败!主帅蒙特拉:是否引咎辞职?这个问题是一种挑衅

土耳其1-6惨败!主帅蒙特拉:是否引咎辞职?这个问题是一种挑衅

直播吧
2024-03-28 08:38:20
【金敬迈】开除刘少奇党籍,不可怕;但全党都同意,这才可怕!

【金敬迈】开除刘少奇党籍,不可怕;但全党都同意,这才可怕!

年之父
2024-03-15 06:10:03
一夜间,美大选翻天巨变!63岁奥巴马突然出山,特朗普始料未及

一夜间,美大选翻天巨变!63岁奥巴马突然出山,特朗普始料未及

荣婷财经
2024-03-27 14:59:19
为何横扫日本?平野盘外招,谁注意孙颖莎反应,邱指替换马琳关键

为何横扫日本?平野盘外招,谁注意孙颖莎反应,邱指替换马琳关键

东球弟
2024-03-28 14:47:49
73岁大爷娶50岁娇妻,2个睾丸却被切了,大爷:还能过性生活吗

73岁大爷娶50岁娇妻,2个睾丸却被切了,大爷:还能过性生活吗

胖胖侃咖
2024-03-28 08:00:05
今年清明是“凶日”,记得:1不动,2不吃,3不做,别犯了忌讳

今年清明是“凶日”,记得:1不动,2不吃,3不做,别犯了忌讳

神牛
2024-03-27 11:50:09
董路曾爆料:卓尔不想再给钱&李铁坚持要,卓尔董事长被惹急爆料

董路曾爆料:卓尔不想再给钱&李铁坚持要,卓尔董事长被惹急爆料

直播吧
2024-03-28 12:53:49
6000万送四人进国家队❗李铁:国内右后卫明天一对一防守最强

6000万送四人进国家队❗李铁:国内右后卫明天一对一防守最强

直播吧
2024-03-28 09:09:33
马琳为何放弃孙颖莎临场指挥?对阵平野美宇,看他在场边举动秒懂

马琳为何放弃孙颖莎临场指挥?对阵平野美宇,看他在场边举动秒懂

东球弟
2024-03-28 15:45:49
逛街穿什么才能吸引你的目光?

逛街穿什么才能吸引你的目光?

室内设计师阿喇
2024-03-26 22:14:21
重庆一彩民中5581万元大奖,现场捐出100万元

重庆一彩民中5581万元大奖,现场捐出100万元

潇湘晨报
2024-03-28 19:49:19
2015年8月21日,汪东兴因病在北京逝世。

2015年8月21日,汪东兴因病在北京逝世。

海梦游者
2024-03-26 17:25:47
52岁阿姨血脂从7.4到1.2,分享:降血脂不是多运动,而是这2件事

52岁阿姨血脂从7.4到1.2,分享:降血脂不是多运动,而是这2件事

讲故事的大翠花花
2024-03-26 08:53:16
民进党出来表态了,民进党作出重大的妥协!

民进党出来表态了,民进党作出重大的妥协!

杂谈天下式
2024-03-28 15:32:03
理想MEGA夺冠中国纯电MPV单周销量排行榜

理想MEGA夺冠中国纯电MPV单周销量排行榜

三言科技
2024-03-28 09:48:08
2024-03-28 21:12:49
linux运维菜
linux运维菜
喜欢使用Linux!
412文章数 4575关注度
往期回顾 全部

科技要闻

小米汽车正式发布

头条要闻

山西女子酒店遇害致命伤全在头部 有750万借款未索回

头条要闻

山西女子酒店遇害致命伤全在头部 有750万借款未索回

体育要闻

疯狂的格林,冲刺的火箭

娱乐要闻

莱昂纳多与25岁新女友互相投喂超恩爱

财经要闻

疯狂!三个城市,三个地王!

汽车要闻

混动增程双模式 长安UNI-Z售11.79万起

态度原创

健康
教育
手机
家居
时尚

早防早筛,远离肝硬化

教育要闻

超百所高校,拟新增博士硕士学位授予单位!

手机要闻

iOS 18定档!苹果终于要全面拥抱AI了?

家居要闻

邂逅浪漫,注入柔性的法式基因

女团人手一副的nerd风眼镜,原来真的那么好戴!

无障碍浏览 进入关怀版