Статья
aiogram: NetworkError и TelegramNetworkError — что делать
Ошибка TelegramNetworkError в aiogram — одна из самых частых жалоб русскоязычных
разработчиков ботов. Разберём причины и решения.
Типичные сообщения об ошибке
aiogram.exceptions.TelegramNetworkError: HTTP Client says - ServerDisconnectedError()
aiohttp.client_exceptions.ClientConnectorError: Cannot connect to host api.telegram.org:443
aiogram.exceptions.TelegramNetworkError: All connection attempts failedПричина №1: блокировка api.telegram.org
Самая частая причина в России и СНГ. Ваш сервер не может достучаться до Telegram.
Решение — подменить API endpoint:
from aiogram import Bot, Dispatcher
from aiogram.client.session.aiohttp import AiohttpSession
from aiogram.client.telegram import TelegramAPIServer
PROXY_URL = "https://v0-telegram-proxy-api.vercel.app"
session = AiohttpSession(
api=TelegramAPIServer.from_base(PROXY_URL)
)
bot = Bot(token="ВАШ_ТОКЕН", session=session)
dp = Dispatcher()Прокси https://v0-telegram-proxy-api.vercel.app работает без регистрации.
Причина №2: таймаут сети
Сеть работает, но медленно — aiogram падает по таймауту.
session = AiohttpSession(
api=TelegramAPIServer.from_base(PROXY_URL),
timeout=60, # увеличьте таймаут
)Причина №3: неправильный токен
Проверьте токен:
curl https://v0-telegram-proxy-api.vercel.app/botВАШ_ТОКЕН/getMeЕсли вернулось {"ok":false,"error_code":401} — токен невалидный, получите новый у @BotFather.
Причина №4: бот заблокирован Telegram
Telegram может заблокировать бот за спам. Проверьте статус через getMe.
Полный рабочий пример с прокси
import asyncio
from aiogram import Bot, Dispatcher, types
from aiogram.client.session.aiohttp import AiohttpSession
from aiogram.client.telegram import TelegramAPIServer
TOKEN = "ВАШ_ТОКЕН"
PROXY = "https://v0-telegram-proxy-api.vercel.app"
async def main():
session = AiohttpSession(api=TelegramAPIServer.from_base(PROXY))
bot = Bot(token=TOKEN, session=session)
dp = Dispatcher()
@dp.message()
async def echo(message: types.Message):
await message.reply(message.text)
await dp.start_polling(bot)
asyncio.run(main())Итог
В большинстве случаев TelegramNetworkError в aiogram решается заменой API endpoint
на прокси-сервер вне зоны блокировок. Используйте https://v0-telegram-proxy-api.vercel.app для быстрого старта.
Сделай собственный прокси за 5 минут
Большинство статей советуют PythonAnywhere или Cloudflare Pages — но оба сервиса уже заблокированы в России и СНГ. Vercel работает стабильно.
Этот сайт создан на v0.app — AI-инструменте от Vercel. На разработку ушло 3 доллара. При регистрации по реферальной ссылке вы получаете $5 на баланс — этого достаточно, чтобы задеплоить свой личный прокси и проверить всё самостоятельно.
Этот сайт обошёлся в $3
Сделан на v0.app — AI-инструменте от Vercel. При регистрации по ссылке вы получаете $5 на баланс — достаточно, чтобы задеплоить свой личный прокси.