Python requests及aiohttp速度对比代码实例


Posted in Python onJuly 16, 2020

环境:centos7 python3.6

测试网址:www.bai.com

测试方式:抓取百度100次

结果:

aio: 10.702147483825684s
requests: 12.404678583145142s

异步框架的速度还是有显著提升的。

下面贡献代码:

import aiohttp
import time
import requests
import asyncio
 
 
def test_requests():
  """ 测试requessts请求百度100次时间 """
 
  start = time.time()
  url = "https://www.baidu.com"
  for i in range(100):
    requests.get(url)
  end = time.time()
  print("requests:")
  print( end - start )
     
 
async def aio_download(url):
  """ aiohttp 下载 """
 
  async with aiohttp.ClientSession() as session:
    await session.get(url)
 
 
async def test_aio():
  """ 测试aiohtpp请求百度100次时间 """
  url = "https://www.baidu.com"
  start = time.time()
  for i in range(100):
    await aio_download(url)
  end = time.time()
  print("aio: ")
  print( end - start )
 
 
if __name__ == "__main__":
 
  loop = asyncio.get_event_loop()
  loop.run_until_complete(test_aio())
 
  test_requests()

————————————————————————————————————————

-—————————————————————————————————————————

小贴士:

requests不要使用session进行反复抓取一个网站的测试,因为从第2次开始,读取的就是缓存了,无论抓取50次还是100次或是更多,总时间都是1s以内。

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

Python 相关文章推荐
python中遍历文件的3个方法
Sep 02 Python
Python之py2exe打包工具详解
Jun 14 Python
Python3.6简单反射操作示例
Jun 14 Python
python 处理微信对账单数据的实例代码
Jul 19 Python
使用pycharm在本地开发并实时同步到服务器
Aug 02 Python
python字典的setdefault的巧妙用法
Aug 07 Python
Python3.0 实现决策树算法的流程
Aug 08 Python
利用python实现AR教程
Nov 20 Python
Python3 实现减少可调用对象的参数个数
Dec 20 Python
使用卷积神经网络(CNN)做人脸识别的示例代码
Mar 27 Python
Python turtle实现贪吃蛇游戏
Jun 18 Python
python数据分析之单因素分析线性拟合及地理编码
Jun 25 Python
Python3 搭建Qt5 环境的方法示例
Jul 16 #Python
python3实现将json对象存入Redis以及数据的导入导出
Jul 16 #Python
Python必须了解的35个关键词
Jul 16 #Python
Python子进程subpocess原理及用法解析
Jul 16 #Python
python redis存入字典序列化存储教程
Jul 16 #Python
Python是怎样处理json模块的
Jul 16 #Python
Python2手动安装更新pip过程实例解析
Jul 16 #Python
You might like
fleaphp crud操作之findByField函数的使用方法
2011/04/23 PHP
Mysql的Root密码忘记,查看或修改的解决方法(图文介绍)
2013/06/14 PHP
php弹出对话框实现重定向代码
2014/01/23 PHP
PHP精确到毫秒秒杀倒计时实例详解
2019/03/14 PHP
THREE.JS入门教程(6)创建自己的全景图实现步骤
2013/01/25 Javascript
JS读取XML文件示例代码
2013/11/15 Javascript
js实现checkbox全选和反选示例
2014/05/01 Javascript
javascript每日必学之运算符
2016/02/16 Javascript
jQuery控制frames及frame页面JS的方法
2016/03/08 Javascript
nodejs加密Crypto的实例代码
2016/07/07 NodeJs
简谈创建React Component的几种方式
2019/06/15 Javascript
JavaScript中callee和caller的区别与用法实例分析
2019/06/28 Javascript
微信小程序 冒泡事件原理解析
2019/09/27 Javascript
javascript设计模式 ? 迭代器模式原理与用法实例分析
2020/04/17 Javascript
[06:07]刀塔密之二:攻之吾命受之吾幸
2014/07/03 DOTA
使用python itchat包爬取微信好友头像形成矩形头像集的方法
2019/02/21 Python
Python多线程threading模块用法实例分析
2019/05/22 Python
Python API 自动化实战详解(纯代码)
2019/06/11 Python
python脚本当作Linux中的服务启动实现方法
2019/06/28 Python
在ipython notebook中使用argparse方式
2020/04/20 Python
详解Django配置JWT认证方式
2020/05/09 Python
python给list排序的简单方法
2020/12/10 Python
五分钟学会怎么用python做一个简单的贪吃蛇
2021/01/12 Python
使用CSS3制作版头动画效果
2020/12/24 HTML / CSS
美国学校用品、教室和教学商店:Discount School Supply
2018/04/04 全球购物
英国领先的鞋类零售商:Shoe Zone
2018/12/13 全球购物
电子商务专业学生的自我鉴定
2013/11/28 职场文书
工作疏忽检讨书
2014/01/25 职场文书
2014年小班元旦活动方案
2014/02/16 职场文书
第一批党的群众路线教育实践活动工作总结
2014/03/03 职场文书
会计专业个人自我鉴定
2014/03/21 职场文书
贷款委托书
2014/08/01 职场文书
2014年学生党支部工作总结
2014/12/20 职场文书
2016秋季小学开学寄语
2015/12/03 职场文书
Axios取消重复请求的方法实例详解
2021/06/15 Javascript
vue 把二维或多维数组转一维数组
2022/04/24 Vue.js