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

 更新时间:2020年07月16日 10:34:41   作者:陈严肃  
这篇文章主要介绍了Python requests及aiohttp速度对比代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

环境: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检测服务器是否正常

    本文介绍使用python检测服务器是否正常,程序的端口是否正常,需要的朋友可以参考下
    2014-02-02
  • Python实现批量提取PPT中的文字

    Python实现批量提取PPT中的文字

    这篇文章主要为大家详细介绍了如何使用Python中的pptx和docx库来将PPT中的文字提取到Word中,文中的示例代码讲解详细,有需要的可以参考下
    2024-03-03
  • python连接mysql并提交mysql事务示例

    python连接mysql并提交mysql事务示例

    这篇文章主要介绍了python连接mysql并提交mysql事务的示例,需要的朋友可以参考下
    2014-03-03
  • Matplotlib可视化之添加让统计图变得简单易懂的注释

    Matplotlib可视化之添加让统计图变得简单易懂的注释

    今天给大家带来的文章是关于Python的,文章围绕着Python Matplotlib可视化展开,文中非常详细的介绍了如何给统计图添加注释,需要的朋友可以参考下
    2021-06-06
  • 配置python连接oracle读取excel数据写入数据库的操作流程

    配置python连接oracle读取excel数据写入数据库的操作流程

    这篇文章主要介绍了配置python连接oracle,读取excel数据写入数据库,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-03-03
  • python selenium登录豆瓣网过程解析

    python selenium登录豆瓣网过程解析

    这篇文章主要介绍了python selenium登录豆瓣网过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-08-08
  • Python中选择结构实例讲解

    Python中选择结构实例讲解

    在本篇文章里小编给大家整理了关于Python选择结构的基础知识点及相关实例,有需要的朋友们可以学习参考下。
    2022-11-11
  • 使用python实现数据筛查

    使用python实现数据筛查

    一般数据筛查可以通过Python中的pandas库来实现,下面小编就来为大家介绍一下Python如何利用pandas实现数据筛查,感兴趣的小伙伴可以一起学习一下
    2023-10-10
  • Django Form 实时从数据库中获取数据的操作方法

    Django Form 实时从数据库中获取数据的操作方法

    这篇文章主要介绍了Django Form 实时从数据库中获取数据的相关知识,本文给大家介绍的非常详细,具有一定的参考借鉴价值 ,需要的朋友可以参考下
    2019-07-07
  • Python Tornado框架轻松写一个Web应用的全过程

    Python Tornado框架轻松写一个Web应用的全过程

    Tornado全称Tornado Web Server,是一个用Python语言写成的Web服务器兼Web应用框架,Tornado走的是少而精的方向,注重的是性能优越,它最出名的是异步非阻塞的服务器方式,这篇文章主要给大家介绍了关于Python Tornado框架轻松写一个Web应用的相关资料,需要的朋友可以参考下
    2021-08-08

最新评论