zoukankan      html  css  js  c++  java
  • 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以内。

  • 相关阅读:
    LeetCode(6. Z 字形变换)
    二分查找
    线性查找
    平安寿险Java面试-社招-四面(2019/08)
    希尔排序
    中移物联网Java面试-社招-三面(2019/07)
    插入排序
    选择排序
    冒泡排序
    八皇后问题
  • 原文地址:https://www.cnblogs.com/chenyansu/p/9419296.html
Copyright © 2011-2022 走看看