📖 用于asyncio和 Python的异步 HTTP 客户端/服务器。

支持Client和HTTP Server。

支持开箱即用的服务器 WebSocket和 客户端 WebSocket ,无需回调。

为 Web 服务器提供中间件和可插入路由。

Python 的 requests 库是一个阻塞式 HTTP 请求库,发出请求后,程序会一直等待服务器的响应,直到得到响应后程序才会进行下一步的处理,这个过程影响爬虫效率。如何在等待过程中做一些其他的事情,如进行请求的调度、响应的处理等等,aiohttp可以异步处理,合理利用等待过程。

Aiohttp 是一个提供异步 Web 服务的库,从 Python3.5 版本开始,Python 中加入了 async/await 关键字,使得回调的写法更加直观和人性化,Aiohttp 的异步操作借助于 async/await 关键字写法变得更加简洁,架构更加清晰。使用异步请求库来进行数据抓取会大大提高效率,下面我们来看一下这个库的安装方法。

pip 安装

推荐使用 pip 安装,命令如下:

1
2
3

pip3 install aiohttp

另外官方还推荐安装如下两个库,一个是字符编码检测库 cchardet,另一个是加速 DNS 解析库 aiodns,安装命令如下:

1
2
3

pip3 install cchardet aiodns

测试安装
安装完成之后,可以在 Python 命令行下测试。

1
2
3
4
5

$ python3
> import aiohttp
如果没有错误报出,则证明库已经安装好了。