簡介併發
asyncio能夠實現單線程併發IO操做,是Python中經常使用的異步處理模塊。關於asyncio模塊的介紹,筆者會在後續的文章中加以介紹,本文將會講述一個基於asyncio實現的HTTP框架——aiohttp,它能夠幫助咱們異步地實現HTTP請求,從而使得咱們的程序效率大大提升。
本文將會介紹aiohttp在爬蟲中的一個簡單應用。
在原來的項目中,咱們是利用Python的爬蟲框架scrapy來爬取噹噹網圖書暢銷榜的圖書信息的。在本文中,筆者將會以兩種方式來製做爬蟲,比較同步爬蟲與異步爬蟲(利用aiohttp實現)的效率,展現aiohttp在爬蟲方面的優點。框架
同步爬蟲異步
首先,咱們先來看看用通常的方法實現的爬蟲,即同步方法,完整的Python代碼以下:scrapy