1. Tutorial
2. 其他库推荐
2.1. aiohttp-requests
这个库时对aiohttp库的网络请求模块的封装,用了这个库,在异步网络请求的时候,可以在写法上更简洁易懂。本质上还是aiohttp库的使用。推荐使用这个库来做网络请求。
2.2. aiofiles
aiofiles是一个用Python编写,用于处理asyncio应用程序中的本地磁盘文件。爬虫过程中用它来进行文件的异步操作。
2.3. grequests
grequests模块相当于是封装了gevent的requests模块。
3. 问题记录
3.1. Multipart.FormData 示例
下面示例展示上传图片至SM.MS。
with open(abspath_file, 'rb') as fp:
multipart_form_data = aiohttp.FormData(quote_fields=False) # quote_fields: 将对中文进行转码
multipart_form_data.add_field('smfile', fp,
content_type="image/jpeg",
filename=os.path.basename(relpath_file),
content_transfer_encoding="base64")
headers = {'Authorization': self.api_token} if self.api_token else None
# headers = {"Content-Type": "multipart/for