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中的类学习笔记
Sep 23 Python
使用Python的Tornado框架实现一个Web端图书展示页面
Jul 11 Python
python flask实现分页效果
Jun 27 Python
详解python中executemany和序列的使用方法
Aug 12 Python
Python爬虫实现全国失信被执行人名单查询功能示例
May 03 Python
Python内置加密模块用法解析
Nov 25 Python
Python tkinter常用操作代码实例
Jan 03 Python
使用Python爬虫库requests发送表单数据和JSON数据
Jan 25 Python
python使用Geany编辑器配置方法
Feb 21 Python
keras load model时出现Missing Layer错误的解决方式
Jun 11 Python
python3排序的实例方法
Oct 20 Python
Pytest实现setup和teardown的详细使用详解
Apr 17 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多文件上传类实例
2015/03/07 PHP
Laravel使用PHPQRCODE实现生成带有LOGO的二维码图片功能示例
2017/07/07 PHP
PHP 构造函数和析构函数原理与用法分析
2020/04/21 PHP
JS 无法通过W3C验证的处理方法
2010/03/09 Javascript
ext 列表页面关于多行查询的办法
2010/03/25 Javascript
从零开始学习jQuery (四) jQuery中操作元素的属性与样式
2011/02/23 Javascript
你的 mixin 真的兼容 ECMAScript 5 吗?
2013/04/11 Javascript
jqplot通过ajax动态画折线图的方法及思路
2013/12/08 Javascript
浅谈Javascript数组索引
2015/07/29 Javascript
Javascript中判断一个值是否为undefined的方法详解
2016/09/28 Javascript
如何使用Bootstrap创建表单
2017/03/29 Javascript
微信小程序商城项目之购物数量加减(3)
2017/04/17 Javascript
js实现鼠标跟随运动效果
2020/08/02 Javascript
JS实现的小火箭发射动画效果示例
2018/12/08 Javascript
VSCode使用之Vue工程配置eslint
2019/04/30 Javascript
微信小程序收货地址API兼容低版本解决方法
2019/05/18 Javascript
微信JS-SDK实现微信会员卡功能(给用户微信卡包里发送会员卡)
2019/07/25 Javascript
vue-router路由模式详解(小结)
2019/08/26 Javascript
VUEX 数据持久化,刷新后重新获取的例子
2019/11/12 Javascript
jQuery实现简易QQ聊天框
2020/02/10 jQuery
Python实现简单的可逆加密程序实例
2015/03/05 Python
Python学习教程之常用的内置函数大全
2017/07/14 Python
python中将函数赋值给变量时需要注意的一些问题
2017/08/18 Python
详解Python实现多进程异步事件驱动引擎
2017/08/25 Python
Python 实现淘宝秒杀的示例代码
2018/01/02 Python
Python之ReportLab绘制条形码和二维码的实例
2018/01/15 Python
Django使用AJAX调用自己写的API接口的方法
2019/03/06 Python
django用户登录验证的完整示例代码
2019/07/21 Python
从pandas一个单元格的字符串中提取字符串方式
2019/12/17 Python
Speedo速比涛法国官方网站:泳衣、泳镜、泳帽、泳裤
2019/07/30 全球购物
Vision Direct比利时:在线订购隐形眼镜
2019/08/27 全球购物
旅游专业职业生涯规划范文
2014/01/13 职场文书
党的群众路线教育实践活动心得体会
2014/03/03 职场文书
经典广告词大全
2014/03/14 职场文书
使用pandas或numpy处理数据中的空值(np.isnan()/pd.isnull())
2021/05/14 Python
anaconda python3.8安装后降级
2021/06/11 Python