python轮子:适配requests.request的aiohttp异步请求

一、适配requests.request的aiohttp异步请求

python 复制代码
import aiohttp
from logaid import log
import ssl
ssl_context = ssl.create_default_context()
ssl_context.check_hostname = False
ssl_context.verify_mode = ssl.CERT_NONE

async def async_request(method, url, **kwargs) -> dict:
    ip = kwargs.get('proxies', {}).get('https', '')
    if ip:
        proxy = 'http://' + ip
        kwargs['proxy'] = proxy
    if kwargs.get('proxies'):
        del kwargs['proxies']

    for _ in range(3):
        try:
            async with aiohttp.ClientSession() as session:
                async with session.request(method, url, ssl=ssl_context, **kwargs) as resp:
                    if resp.status in [200]:
                        resp_json = await resp.json()
                        return resp_json
        except Exception as e:
            if _ == 2:
                log.error(e)
    return dict()
相关推荐
金銀銅鐵8 小时前
[Python] 借助 turtle 逐字展示唐诗《金缕衣》
python
coder!mq9 小时前
说几个常见的语法糖?
java·开发语言·算法
gugucoding9 小时前
38. 【Java】Stream API(下):高级操作与性能
java·开发语言
Lhan.zzZ9 小时前
在 Visual Studio 2022 中打造可扩展的动态链接库模块:从零搭建到原理解析
开发语言·c++·visual studio
心平气和量大福大10 小时前
android-实例-蒲公英-更新与安装-5-签名与生成APK
android·java·开发语言
码哥DFS10 小时前
构造函数、实例对象、对象原型 ----三者关系
开发语言·javascript·原型模式
Python大数据分析@10 小时前
使用大模型MCP采集数据,爬虫已经无门槛
python·网络爬虫
quantdash_cc10 小时前
告别自建 Requests/BS4 网页爬虫:基于 QuantDash 搭建零维保的高性能量化行情流水线
开发语言·爬虫·python·pandas·量化·quantdash
ydd10010010 小时前
寻找两个正序数组的中位数 Java 题解,二分分割详解
java·开发语言
65岁退休Coder11 小时前
LangChain v1.3.4 笔记 - 07 补充:链式调用 LCEL
后端·python·langchain