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实现简易云音乐播放器
Jan 04 Python
利用python如何处理百万条数据(适用java新手)
Jun 06 Python
Python实现动态添加属性和方法操作示例
Jul 25 Python
Python实现插入排序和选择排序的方法
May 12 Python
python 将字符串完成特定的向右移动方法
Jun 11 Python
django框架中ajax的使用及避开CSRF 验证的方式详解
Dec 11 Python
简单了解python shutil模块原理及使用方法
Apr 28 Python
基于logstash实现日志文件同步elasticsearch
Aug 06 Python
Python web框架(django,flask)实现mysql数据库读写分离的示例
Nov 18 Python
python 实现aes256加密
Nov 27 Python
Python 把两层列表展开平铺成一层(5种实现方式)
Apr 07 Python
Python 可迭代对象 iterable的具体使用
Aug 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实现过滤UBB代码的类
2015/03/12 PHP
ThinkPHP中html:list标签用法分析
2016/01/09 PHP
PHP中的函数声明与使用详解
2017/05/27 PHP
PHP实现UTF8二进制及明文字符串的转化功能示例
2017/11/20 PHP
PHP xpath()函数讲解
2019/02/11 PHP
ThinkPHP框架整合微信支付之JSAPI模式图文详解
2019/04/09 PHP
JS中的this变量的使用介绍
2013/10/21 Javascript
JavaScript改变CSS样式的方法汇总
2015/05/07 Javascript
AngularJS中transclude用法详解
2016/11/03 Javascript
Nodejs下用submit提交表单提示cannot post错误的解决方法
2016/11/21 NodeJs
Bootstrap 网格系统布局详解
2017/03/19 Javascript
详解使用Node.js 将txt文件转为Excel文件
2017/07/05 Javascript
js 事件的传播机制(实例讲解)
2017/07/20 Javascript
Vue中render方法的使用详解
2018/01/26 Javascript
微信小程序数据存储与取值详解
2018/01/30 Javascript
关于layui 实现点击按钮添加一行(方法渲染创建的table)
2019/09/29 Javascript
vant IndexBar实现的城市列表的示例代码
2019/11/20 Javascript
javascript的hashCode函数实现代码小结
2020/08/11 Javascript
JS中多层次排序算法的实现代码
2021/01/06 Javascript
vue二选一tab栏切换新做法实现
2021/01/19 Vue.js
Element-ui upload上传文件限制的解决方法
2021/01/22 Javascript
python二分法实现实例
2013/11/21 Python
Python自然语言处理 NLTK 库用法入门教程【经典】
2018/06/26 Python
python3爬虫怎样构建请求header
2018/12/23 Python
Python适配器模式代码实现解析
2019/08/02 Python
浅析Python+OpenCV使用摄像头追踪人脸面部血液变化实现脉搏评估
2019/10/17 Python
解决Jupyter NoteBook输出的图表太小看不清问题
2020/04/16 Python
英国剑桥包官网:The Cambridge Satchel Company
2016/08/01 全球购物
Expedia加拿大官方网站:加拿大最大的在线旅游提供商
2017/12/31 全球购物
毕业生自荐书模版
2014/01/04 职场文书
交通安全演讲稿
2014/01/07 职场文书
单位授权委托书范本
2014/09/26 职场文书
同事打架检讨书
2015/05/06 职场文书
高温慰问简报
2015/07/21 职场文书
2019财务转正述职报告
2019/06/27 职场文书
「海贼王」112.9万粉丝纪念图标公布
2022/03/21 日漫