httpx比requests更加优秀-httpx比requests更加优秀

news/2025/10/31 15:30:32/文章来源:https://www.cnblogs.com/phyger/p/19180055

前言

相信你和我一样,在日常的工作中,requests 库被广泛使用。今天我要为你介绍一款号称下一代全功能的 HTTP 客户端:httpx

什么是 httpx

httpxPython3 的全功能客户端,支持同步&异步 API,同时支持 HTTP/1.1HTTP/2

相比其他 HTTP 库,httpx 具有更加易用的接口,更加强大的功能,是未来 Python 开发者的不二选择。

安装和使用

安装

pip install httpx

get

import httpx# get obj
res = httpx.get('https://www.baidu.com')
print(res,res.status_code)# response content,text
print(res.content,res.text)

代码运行结果

对于 contenttext 的去区别,从图中可以直观的看到,content 的类型为 bytes,而 text 的类型为 str

post

# post objres = httpx.post('http://127.0.0.1:4523/mock/351132/pet',data={'name':'Python测试和开发','status':'Python_Lab'})print(res.text,type(res.content),res.status_code,res.encoding)

代码运行结果

因为我们使用了 mock server,所以接口返回的数据可能和我们请求的不一致。

put

# put pbjres = httpx.put('http://127.0.0.1:4523/mock/351132/pet',params={'apifoxResponseId':'321249'})
print(res.status_code,res.encoding,res.text)

代码运行结果

delete

# delete objres = httpx.delete('http://127.0.0.1:4523/mock/351132/pet/1')
print(res.status_code,res.encoding,res.text)

代码运行结果

高级用法

处理 json

通常对于 content 返回是 bytes 或者 str 的数据,我们需要单独使用 json 模块进行数据转换,但是现在我们可以直接使用 httpx 为我们提供的 json 方法拿到字典对象,从而方便的进行数据处理。

import httpx# json
res = httpx.get('https://getman.cn/mock/post')
print(type(res.text),type(res.content),type(res.json()),res.json())

代码运行结果

处理二进制

当我们需要下载图片的时候,通常我们是将 content 的内容分块读取,然后写入文件。但是 httpx 建议我们使用 pillowio 来处理图片的二进制内容。

import httpx
from PIL import Image
from io import BytesIO# bytes
res = httpx.get('http://localhost:8765/um/imgs/')
print(res.status_code)
ff = Image.open(BytesIO(res.content))
ff.save('xx.png')

下载的图片

httpx 支持所有 requestsraise_for_status()等所有方法,还新增了部分特性,例如 httpx.codes.OK 代替 200 响应码的短语等动能。总之,httpx 是一款值得学习的优秀软件。

官方文档

https://www.python-httpx.org/

以上就是今天的全部内容了,感谢您的阅读,我们下节再会。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/951877.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

HttpRunner-8-数据驱动-httprunner-8

数据驱动概览 为什么要用数据驱动 举个简单例子,当我们在测试一个输入框的功能时,可能需要输入不同的参数,此时,我们不需要设计多个用例,而只需要将输入值参数化,将不同的参数作为一个列表通过数据驱动的方式进行…

HttpRunner-7-用例分层-httprunner-7

何为用例分层? 在自动化测试领域,自动化测试用例的可维护性是极其重要的因素,直接关系到自动化测试能否持续有效地在项目中开展。 概括来说,测试用例分层机制的核心是将接口定义、测试步骤、测试用例、测试场景进行…

HttpRunner-6-环境变量-httprunner-6

为什么要用环境变量 在自动化测试中,有时需要借助环境变量实现某些特定的目的,常见的场景包括:切换测试环境 切换测试配置 存储敏感数据(从信息安全的角度出发)设置环境变量 Linux 中 使用 export 命令 $ export …

HttpRunner-5-DebugTalk-httprunner-5

什么是 debugtalk 在前面的文章中我们已经介绍过 httprunner 的项目结构。debugtalk.py 是用来表示项目根目录的,同时我们也能在其中自定义一些方法供 api 和 case 使用。 debugtalk 用于 hook 详情查看:HttpRunner-…

制造业运营管理新突破:Tita 赋能下的精益生产与协同发展

在全球制造业加速向智能化、数字化转型的大背景下,传统制造业运营管理模式正面临严峻挑战。市场需求的快速变化、产品更新换代的加速、供应链的复杂多变以及内部管理的低效,都成为制约企业发展的瓶颈。Tita 作为一款…

2025年10月上海装修公司对比榜:五强真实口碑与工期排名

在上海,装修一套房子往往意味着要在上百家公司里做选择:有人担心工期被拖,有人怕隐蔽工程出问题,有人被报价里的“增项”吓退。2025年三季度,上海市住建委发布的《住宅装饰装修行业运行简报》显示,全市在册家装企…

测试开发必看!JVM调优10大技巧,性能瓶颈瞬间搞定

关注 霍格沃兹测试学院公众号,回复「资料」, 领取人工智能测试开发技术合集 在软件测试和开发中,JVM不仅是执行 Java 程序的核心引擎,也是性能优化的“战场”。对于大型互联网应用或复杂系统,JVM 的配置直接影响应…

Dify入门实战:5分钟搭建你的第一个AI测试用例生成器

关注 霍格沃兹测试学院公众号,回复「资料」, 领取人工智能测试开发技术合集 传统的手工编写测试用例方式效率低下且容易遗漏边界场景。借助Dify平台,即使没有深厚的编程背景,你也可以快速构建一个能自动生成测试用例…

.NET Core + Docker 部署:Serilog 日志配置与查看全攻略

.NET Core + Docker 部署:Serilog 日志配置与查看全攻略作者:iamlong关键词:.NET Core、Serilog、Docker、Linux、日志挂载、日志排查在将 .NET Core Web API 部署到 Linux 服务器并使用 Docker 容器化运行时,日志…

2025年10月国内环保工程设备厂家前5名推荐榜单

当前,环保工程设备行业正朝着智能化、集成化方向高速发展,技术迭代与服务升级成为企业脱颖而出的关键。本文结合市场占有率、技术创新力与用户反馈,为您呈现一份最新的行业顶尖厂家排名,并附上详细的对比分析表单,…

测试同学要求我们产品写用例,然后你们照着测?

关注 霍格沃兹测试学院公众号,回复「资料」, 领取人工智能测试开发技术合集 “测试同学要求我们产品写用例,然后你们照着测?” 当看到产品经理发送的这条消息时,作为测试 Leader,心里五味杂陈: 一方面是被误解的…

光伏支架冲孔机生产厂家:探索高效制造解决方案

文章摘要 光伏支架冲孔机行业随着可再生能源的快速发展而蓬勃兴起,2025年预计市场规模将突破百亿元,驱动制造技术向智能化、高效化转型。本文基于行业数据和用户反馈,整理了2025年光伏支架冲孔机生产厂家口碑排行榜…

2025年光伏支架冲孔机源头厂家推荐榜单:技术革新与市场格局深度解析

摘要 随着光伏产业进入规模化发展新阶段,光伏支架冲孔机作为关键加工设备迎来技术升级浪潮。本文基于2025年行业数据,深入分析全球光伏支架冲孔机制造领域的技术发展趋势与市场竞争格局,特别针对江苏众利达自动化设…

2025年克拉玛依壁挂炉公司权威推荐榜单:燃气壁挂炉/万家乐壁挂炉/威能壁挂炉服务商精选

在冬季寒冷漫长的克拉玛依地区,壁挂炉作为家庭和商业场所的核心供暖设备,其可靠性、能效表现及售后服务的响应速度直接关系到用户的取暖体验与生活品质。据行业数据显示,2024年中国壁挂炉市场规模已突破200亿元,其…

weblogic、thinkphp、shiro反序列化漏洞

1、复现weblogic弱口令漏洞并getshell2、使用goby工具扫描weblogic漏洞3、复现thinkphp 5.x命令执行漏洞、shiro反序列化漏洞并植入内存马 [thinkphp 5.x命令执行漏洞]:[shiro反序列化漏洞]:4、复现phpmyadmin弱口令并…

PandaCoder 2.4.3 震撼发布!

PandaCoder 2.4.3 震撼发布! “SQL Monitor”来了——让每一行 SQL 都无所遁形!“我不是在做工具,我是在为开发者造光。” —— 舒一笑不秃头 www.poeticcoder.com一、为什么我们需要 SQL Monitor? 你有没有遇到过…

2025年油污泥脱水机制造企业权威推荐榜单:洗煤污泥脱水机/带式浓缩污泥脱水机/尾矿污泥脱水机源头厂家精选

在环保政策持续收紧与工业绿色转型的双重驱动下,油污泥处理已成为石化、油田、炼化等行业的重点关注环节。据行业调研数据显示,2025年中国工业污泥处理市场规模预计突破百亿元,其中油污泥处理设备年增长率稳定在15%…

2025 年洗墙灯厂家最新推荐榜,技术实力与市场口碑深度解析,严选高品质户外照明品牌防尘洗墙灯/酒店洗墙灯/建筑洗墙灯公司推荐

引言 为精准筛选出 2025 年优质洗墙灯品牌,本次推荐榜测评由照明电器协会全程指导,结合协会发布的《2024-2025 户外照明产品质量测评报告》核心数据开展。测评采用 “三维九项” 评估体系:第一维度为技术实力,涵盖…

2025 年加药装置厂家最新推荐榜,技术实力与市场口碑深度解析,精选高适配性优质品牌加药装置/江苏加药装置公司推荐

引言 为精准筛选出 2025 年加药装置领域优质品牌,本次推荐榜联合环境保护产业协会开展测评,测评覆盖国内 120 余家加药装置生产企业。测评采用 “三维九项” 评估体系,从技术实力(核心技术研发、定制化能力、智能化…

钢坝闸厂家:创新水工解决方案的领导者

文章摘要 本文深入探讨钢坝闸在现代水利工程中的关键作用,重点介绍安徽寓泽水利科技有限公司在钢坝闸制造领域的创新优势。通过分析用户痛点和行业挑战,阐述全钢板结构、智能化控制及高性价比如何提升防洪效率和工程…