利用aiohttp制作异步爬虫

  1. 云栖社区>
  2. Python中文社区>
  3. 博客>
  4. 正文

利用aiohttp制作异步爬虫

技术小能手 2018-11-29 15:51:24 浏览14658
展开阅读全文

简介

asyncio可以实现单线程并发IO操作,是Python中常用的异步处理模块。关于asyncio模块的介绍,笔者会在后续的文章中加以介绍,本文将会讲述一个基于asyncio实现的HTTP框架——aiohttp,它可以帮助我们异步地实现HTTP请求,从而使得我们的程序效率大大提高。
本文将会介绍aiohttp在爬虫中的一个简单应用。
在原来的项目中,我们是利用Python的爬虫框架scrapy来爬取当当网图书畅销榜的图书信息的。在本文中,笔者将会以两种方式来制作爬虫,比较同步爬虫与异步爬虫(利用aiohttp实现)的效率,展示aiohttp在爬虫方面的优势。

同步爬虫

首先,我们先来看看用一般的方法实现的爬虫,即同步方法,完整的Python代码如下:

'''
同步方式爬取当当畅销书的图书信息
'''

import time
import re

网友评论

登录后评论
0/500
评论
技术小能手
+ 关注
所属云栖号: Python中文社区