Python requests及aiohttp速度對比代碼實例
環(huán)境:centos7 python3.6
測試網(wǎng)址:www.bai.com
測試方式:抓取百度100次
結(jié)果:
aio: 10.702147483825684s
requests: 12.404678583145142s
異步框架的速度還是有顯著提升的。
下面貢獻(xiàn)代碼:
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進(jìn)行反復(fù)抓取一個網(wǎng)站的測試,因為從第2次開始,讀取的就是緩存了,無論抓取50次還是100次或是更多,總時間都是1s以內(nèi)。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Python調(diào)用高德API實現(xiàn)批量地址轉(zhuǎn)經(jīng)緯度并寫入表格的功能
這篇文章主要介紹了Python調(diào)用高德API實現(xiàn)批量地址轉(zhuǎn)經(jīng)緯度并寫入表格的功能,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-01-01
Python實現(xiàn)讀取txt文件并畫三維圖簡單代碼示例
這篇文章主要介紹了Python實現(xiàn)讀取txt文件并畫三維圖簡單代碼示例,具有一定借鑒價值,需要的朋友可以參考下。2017-12-12
詳解python OpenCV學(xué)習(xí)筆記之直方圖均衡化
本篇文章主要介紹了詳解python OpenCV學(xué)習(xí)筆記之直方圖均衡化,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-02-02

