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每隔N秒运行指定函数的方法
Mar 16 Python
基于Python实现通过微信搜索功能查看谁把你删除了
Jan 27 Python
从源码解析Python的Flask框架中request对象的用法
Jun 02 Python
Python利用flask sqlalchemy实现分页效果
Aug 02 Python
浅谈python中requests模块导入的问题
May 18 Python
python将秒数转化为时间格式的实例
Sep 16 Python
Python django框架应用中实现获取访问者ip地址示例
May 17 Python
selenium 安装与chromedriver安装的方法步骤
Jun 12 Python
Python项目 基于Scapy实现SYN泛洪攻击的方法
Jul 23 Python
python实现淘宝购物系统
Oct 25 Python
Python计算公交发车时间的完整代码
Feb 12 Python
python实现扫雷游戏的示例
Oct 20 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
基于qmail的完整WEBMAIL解决方案安装详解
2006/10/09 PHP
php下封装较好的数字分页方法
2010/11/23 PHP
Codeigniter操作数据库表的优化写法总结
2014/06/12 PHP
在Mac上编译安装PHP7的开发环境
2015/07/28 PHP
yii2中使用Active Record模式的方法
2016/01/09 PHP
laravel框架中视图的基本使用方法分析
2019/11/23 PHP
laravel框架中控制器的创建和使用方法分析
2019/11/23 PHP
php7 图形用户界面GUI 开发示例
2020/02/22 PHP
js获取当前月的第一天和最后一天的小例子
2013/11/18 Javascript
Javascript自定义函数判断网站访问类型是PC还是移动终端
2014/01/10 Javascript
firefox下jquery ajax返回object XMLDocument处理方法
2014/01/26 Javascript
使用jquery操作session方法分享
2015/01/22 Javascript
JS动态加载当前时间的方法
2015/02/09 Javascript
使用canvas实现仿新浪微博头像截取上传功能
2015/09/02 Javascript
js实现二级菜单渐隐显示
2015/11/03 Javascript
深入浅析AngularJS中的module(模块)
2016/01/04 Javascript
JS跳转手机站url的若干注意事项
2017/10/18 Javascript
第一个Vue插件从封装到发布
2017/11/22 Javascript
javascript实现考勤日历功能
2018/11/29 Javascript
numpy基础教程之np.linalg
2019/02/12 Python
Python 实现文件打包、上传与校验的方法
2019/02/13 Python
python 用所有标点符号分隔句子的示例
2019/07/15 Python
python实现通过队列完成进程间的多任务功能示例
2019/10/28 Python
python 常见的排序算法实现汇总
2020/08/21 Python
前端canvas动画如何转成mp4视频的方法
2019/06/17 HTML / CSS
安纳塔拉酒店度假村及水疗官方网站:Anantara Hotel
2016/08/25 全球购物
SOA面试题:如何在SOA中实现松耦合
2013/07/21 面试题
大四本科生的自我评价
2013/12/30 职场文书
医药专业应届毕业生求职信范文
2014/01/01 职场文书
领导干部作风建设工作总结
2014/10/23 职场文书
全国法制宣传日活动总结
2015/05/05 职场文书
大学生受助感言
2015/08/01 职场文书
党组织结对共建协议书
2016/03/23 职场文书
为什么说餐饮很难做,是因为你不了解这些新规则
2019/08/20 职场文书
vue项目配置sass及引入外部scss文件
2022/04/14 Vue.js
Python Django / Flask如何使用Elasticsearch
2022/04/19 Python