Python AIOHTTP 基本使用
序言
最近在用 Python 写爬虫来下载漫画(见之前几篇介绍 LANraragi 的文章)。一本漫画的网页通常是这样的:
该网页上的所有数据可以用 BeautifulSoup 获得,而一个页面只需要一次通信。但是下载图片不一样,一张图片就需要一次通信,而且响应体往往很大。正如包子不会一个个地煮,图片也不用顺序地下载,否则太浪费时间了。
AIOHTTP 是一个异步 HTTP 客户端/服务端模块,很适合这一场景。通过异步编程,能够最大程度地榨取网络(和对方服务器)的性能。本文着眼于介绍 AIOHTTP 的基本使用和案例,不会详细阐述原理。