День добрый
Пишу небольшого бота который будет при запуске отправлять товар в канал телеграмма. То есть мне не нужно все время поддерживать сессию, а только отправлять пост (картинка + текст) в телегу 2-3 раза в день.
Сейчас код выглядит так.
from aiogram import Bot, types
import asyncio
API_TOKEN = '00000000000000000000000000'
CHANNEL_ID = -00000000000000000
bot = Bot(token=API_TOKEN, parse_mode=types.ParseMode.HTML)
async def send_good(chanel_id: int, text: str):
await bot.send_message(chanel_id, text)
async def start_post():
posted = False
while not posted:
await send_good(CHANNEL_ID, 'Some text')
posted = True
break
loop = asyncio.get_event_loop()
loop.run_until_complete(start_post())
При запуске я получаю ошибку, хотя текст в канал отправляется
Unclosed client session
client_session: <aiohttp.client.ClientSession object at 0x0000026709284F10>
Unclosed connector
connections: ['[(<aiohttp.client_proto.ResponseHandler object at 0x000002670928C340>, 18442.312)]']
connector: <aiohttp.connector.TCPConnector object at 0x0000026709284D90>
Я так понял это происходит из-за того что бот рассчитан на постоянное соединение и если запускаю скрипт повторно то предыдущая сессия остается открытой. Пробовал писать в конце loop.close() опять же - "вываливается" куча ошибок.
Подскажите как это обойти и еще одно, что передать картинку, подписанную ниже текстом мне нужно в bot.send_message(chanel_id, text) передавать фото 3 аргументом как текст в побитовом формате или это как то по другому можно сделать?