@Dimas4

AioHttp ошибка Cannot connect to host *тут сайт*:443 ssl:None [Connect call failed ('*его ip*', 443)]?

Есть много урлов. Нужно сделать запросы. Функция для запросов:
async def get_html_2(session, url):
    try:
        async with session.get(url) as response:
            return await response.text()
    except Exception as e:
        print(url, e)

async def html_get(url):
    async with aiohttp.ClientSession() as session:
        html = await get_html_2(session, url)
        return html

Вызов:
loop = asyncio.get_event_loop()
result.append(asyncio.ensure_future(html_get(BASE_URL.format(urllib.parse.quote(j[0]))))) # это проходит в цикле, поэтому 
# формируется урлов много. сам цикл здесь пропустил
result = loop.run_until_complete(asyncio.gather(*result))

По итогу почти на все запросы выкидывается ошибка
Cannot connect to host *тут сайт*:443 ssl:None [Connect call failed ('*его ip*', 443)]
Как это можно исправить?
  • Вопрос задан
  • 5700 просмотров
Пригласить эксперта
Ответы на вопрос 2
Alex_woland
@Alex_woland
При использовании WINDOWS c python>=3.8, aiohttp<=3.7.4 с proxy ошибка "... Cannot connect to host *тут сайт*:443 ssl:default ..." может решаться так:

import sys
if sys.version_info[0] == 3 and sys.version_info[1] >= 8 and sys.platform.startswith('win'):
    policy = asyncio.WindowsSelectorEventLoopPolicy()
    asyncio.set_event_loop_policy(policy)


https://github.com/aio-libs/aiohttp/issues/4536
Ответ написан
Комментировать
@slovnet
смотреть какие запросы принимает сервер к которому обращаетесь. Вот дока https://docs.aiohttp.org/en/stable/client_advanced...
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы