服务器之家

服务器之家 > 正文

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

时间:2020-07-08 10:55     来源/作者:蓝寅

一、httpx模块是什么?

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

二、httpx模块基础使用

2.1 httpx模块安装

pip install httpx

2.2 httpx模块基础使用

?
1
2
3
4
5
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 模拟请求头

?
1
2
3
4
5
6
7
8
9
10
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的

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

原文链接:https://www.cnblogs.com/dream66/p/13237252.html

相关文章

热门资讯

2022年最旺的微信头像大全 微信头像2022年最新版图片
2022年最旺的微信头像大全 微信头像2022年最新版图片 2022-01-10
蜘蛛侠3英雄无归3正片免费播放 蜘蛛侠3在线观看免费高清完整
蜘蛛侠3英雄无归3正片免费播放 蜘蛛侠3在线观看免费高清完整 2021-08-24
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
暖暖日本高清免费中文 暖暖在线观看免费完整版韩国
暖暖日本高清免费中文 暖暖在线观看免费完整版韩国 2021-05-08
返回顶部