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中文编码问题小结
Sep 28 Python
python入门之语句(if语句、while语句、for语句)
Jan 19 Python
Python中Selenium模拟JQuery滑动解锁实例
Jul 26 Python
Python之用户输入的实例
Jun 22 Python
在python环境下运用kafka对数据进行实时传输的方法
Dec 27 Python
Pandas删除数据的几种情况(小结)
Jun 21 Python
Django中Middleware中的函数详解
Jul 18 Python
使用 Python 合并多个格式一致的 Excel 文件(推荐)
Dec 09 Python
Python使用qrcode二维码库生成二维码方法详解
Feb 17 Python
python GUI库图形界面开发之PyQt5 MDI(多文档窗口)QMidArea详细使用方法与实例
Mar 05 Python
Python 机器学习工具包SKlearn的安装与使用
May 14 Python
Python多个MP4合成视频的实现方法
Jul 16 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
晶体管单管来复再生式收音机
2021/03/02 无线电
php 获取可变函数参数的函数
2009/08/26 PHP
Ajax实时验证用户名/邮箱等是否已经存在的代码打包
2011/12/01 PHP
php实现telnet功能示例
2014/04/08 PHP
php常用字符串String函数实例总结【转换,替换,计算,截取,加密】
2016/12/07 PHP
ExtJS的FieldSet的column列布局
2009/11/20 Javascript
基于jQuery实现的向下滑动二级菜单效果代码
2015/08/31 Javascript
jQuery实现的多滑动门,多选项卡效果代码
2016/03/28 Javascript
深入解析jQuery中Deferred的deferred.promise()方法
2016/05/03 Javascript
javascirpt实现2个iframe之间传值的方法
2016/06/30 Javascript
利用NPM淘宝的node.js镜像加速nvm
2017/03/27 Javascript
Angularjs自定义指令实现分页插件(DEMO)
2017/09/16 Javascript
详解Angular5 服务端渲染实战
2018/01/04 Javascript
解决Echarts2竖直datazoom滑动后显示数据不全的问题
2020/07/20 Javascript
maptalks+three.js+vue webpack实现二维地图上贴三维模型操作
2020/08/10 Javascript
windows10系统中安装python3.x+scrapy教程
2016/11/08 Python
Django 实现购物车功能的示例代码
2018/10/08 Python
简单了解python单例模式的几种写法
2019/07/01 Python
Pytorch释放显存占用方式
2020/01/13 Python
tensorflow mnist 数据加载实现并画图效果
2020/02/05 Python
用Python开发app后端有优势吗
2020/06/29 Python
HTML5 LocalStorage 本地存储刷新值还在
2017/03/10 HTML / CSS
美国美发品牌:Bumble and Bumble
2016/10/08 全球购物
澳大利亚婴儿礼品公司:The Baby Gift Company
2018/11/04 全球购物
学生处主任岗位职责
2013/12/01 职场文书
学习新党章思想汇报
2014/01/09 职场文书
文员岗位职责范本
2014/03/08 职场文书
幼儿园安全责任书
2014/04/14 职场文书
学校安全生产承诺书
2014/05/23 职场文书
关于感恩的演讲稿500字
2014/08/26 职场文书
社区工作者个人总结
2015/02/28 职场文书
政协工作总结2015
2015/05/20 职场文书
宣传部部长竞选稿
2015/11/21 职场文书
2019财务管理制度最新范本!
2019/07/09 职场文书
Python标准库pathlib操作目录和文件
2021/11/20 Python
使用compose函数优化代码提高可读性及扩展性
2022/06/16 Javascript