Python基于httpx模块实现发送请求


Posted in Python onJuly 07, 2020

一、httpx模块是什么?

一个用于http请求的模块,类似于requests、aiohttp;
既能发送同步请求(是指在单进程单线程的代码中,发起一次请求后,在收到返回结果之前,不能发起下一次请求),又能发送异步请求(是指在单进程单线程的代码中,发起一次请求后,在等待网站返回结果的时间里,可以继续发送更多请求)。

二、httpx模块基础使用

2.1 httpx模块安装

pip install httpx

2.2 httpx模块基础使用

import httpx
res = httpx.get('http://www.hnxmxit.com/')
print( res.status_code )
print( res.headers )
print( res.content.decode('utf8') )

上述代码是通过httpx模块发送一个打开网站首页的情况,然后返回状态码、响应头信息的例子,读者应该发现和requests很像。

2.2 模拟请求头

import httpx

get_param_data = {'wd':'湖南软测'}
headinfos = {'User-Agent':'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36',
       'Accept-Encoding':'gzip,deflate,br',
       'Accept-Language':'zh-CN,zh;q=0.9',
       'Accept':'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9'
       }
response = httpx.get( url='https://www.baidu.com/s',params=get_param_data,headers=headinfos )
print(response.content.decode('utf-8'))

上述代码完成在百度中搜索 湖南软测 的例子,其实写法完全和requests相同

三、小结:

  • requests 和 httpx都能模拟发送请求
  • 具一些大神测试后,httpx由于支持异步请求,所以发送大量的请求时,httpx的效率是优于requests的

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python检测服务器是否正常
Feb 16 Python
解决python3 urllib中urlopen报错的问题
Mar 25 Python
Python Pandas 获取列匹配特定值的行的索引问题
Jul 01 Python
python 数据提取及拆分的实现代码
Aug 26 Python
使用 pytorch 创建神经网络拟合sin函数的实现
Feb 24 Python
浅析pip安装第三方库及pycharm中导入第三方库的问题
Mar 10 Python
python小程序基于Jupyter实现天气查询的方法
Mar 27 Python
Python 实现自动完成A4标签排版打印功能
Apr 09 Python
tensorflow图像裁剪进行数据增强操作
Jun 30 Python
Python3爬虫里关于识别微博宫格验证码的知识点详解
Jul 30 Python
Django实现微信小程序支付的示例代码
Sep 03 Python
怎么用Python识别手势数字
Jun 07 Python
opencv 图像腐蚀和图像膨胀的实现
Jul 07 #Python
Pytorch损失函数nn.NLLLoss2d()用法说明
Jul 07 #Python
浅析Python __name__ 是什么
Jul 07 #Python
Pytorch上下采样函数--interpolate用法
Jul 07 #Python
pytorch随机采样操作SubsetRandomSampler()
Jul 07 #Python
pytorch加载自己的图像数据集实例
Jul 07 #Python
keras实现VGG16 CIFAR10数据集方式
Jul 07 #Python
You might like
php中显示数组与对象的实现代码
2011/04/18 PHP
php防止sql注入示例分析和几种常见攻击正则表达式
2014/01/12 PHP
PHP回溯法解决0-1背包问题实例分析
2015/03/23 PHP
PHP中获取文件创建日期、修改日期、访问时间的方法
2016/11/05 PHP
javascript的对话框详解与参数
2007/03/08 Javascript
javascript prototype,executing,context,closure
2008/12/24 Javascript
JS 图片缩放效果代码
2010/06/09 Javascript
30个最好的jQuery 灯箱插件分享
2011/04/25 Javascript
JavaScript利用append添加元素报错的解决方法
2014/07/01 Javascript
JavaScript通过使用onerror设置默认图像显示代替alt
2016/03/01 Javascript
JS中递归函数
2016/06/17 Javascript
Angular2 环境配置详细介绍
2016/09/21 Javascript
微信小程序本作用域下调用全局JS详解及实例
2017/02/22 Javascript
彻底学会Angular.js中的transclusion
2017/03/12 Javascript
Nodejs中获取当前函数被调用的行数及文件名详解
2018/12/12 NodeJs
微信小程序webview实现长按点击识别二维码功能示例
2019/01/24 Javascript
layui table复选框禁止某几条勾选的实例
2019/09/20 Javascript
javascript设计模式 ? 简单工厂模式原理与应用实例分析
2020/04/09 Javascript
antd vue table跨行合并单元格,并且自定义内容实例
2020/10/28 Javascript
JavaScript构造函数原理及实现流程解析
2020/11/19 Javascript
[56:41]iG vs Winstrike 2018国际邀请赛小组赛BO2 第二场
2018/08/17 DOTA
[07:01]DOTA2-DPC中国联赛正赛 Aster vs Magma 3月5日 赛后选手采访
2021/03/11 DOTA
Python 编码Basic Auth使用方法简单实例
2017/05/25 Python
Python爬虫包BeautifulSoup实例(三)
2018/06/17 Python
python多线程http压力测试脚本
2019/06/25 Python
Python图像处理库PIL的ImageGrab模块介绍详解
2020/02/26 Python
Python中如何添加自定义模块
2020/06/09 Python
CSS3属性background-size使用指南
2014/12/09 HTML / CSS
CSS3实现王者匹配时的粒子动画效果
2019/04/12 HTML / CSS
美国最大的船只买卖在线市场:Boat Trader
2018/08/04 全球购物
员工工作表现评语
2014/04/26 职场文书
小学运动会班级口号
2014/06/09 职场文书
2014年外联部工作总结
2014/11/17 职场文书
北京颐和园导游词
2015/01/30 职场文书
商超业务员岗位职责
2015/02/13 职场文书
JS实现简单控制视频播放倍速的实例代码
2021/04/18 Javascript