aiogram.types import InputFile
from aiogram.utils.markdown import hlink
from config import channels
from keyboards.good_or_bad import good_or_bad_keyboard
from loader import bot, dp
from utils.notify_admins import on_startup_notify
import datetime
async def on_startup(dp):
await on_startup_notify(dp)
async def send_photo(chat_id: int, photo: InputFile, caption: str):
await bot.send_photo(chat_id, photo, caption, reply_markup=good_or_bad_keyboard)
directory = "images"
photos = list()
formats = ['.jpg', '.jpeg', '.png']
one = '9x16 - Name Channel'
two = 't.me/link_on_channel'
three = '@name_channel'
url = two
time_3 = str(datetime.time(hour=4, minute=35))
time_3 = time_3[:-3]
time_5 = str(datetime.time(hour=4, minute=32))
time_5 = time_5[:-3]
time_7 = str(datetime.time(hour=4, minute=36))
time_7 = time_7[:-3]
async def main():
while True:
now = datetime.datetime.now()
now = str(now.time())
now = now.split('.')[0]
now = now[:-3]
if now == time_3:
if now == time_7:
print('Остановка')
await asyncio.sleep(60)
print(f'Сейчас {now}')
for i in formats:
for j in filter(lambda x: x.endswith(i), listdir(directory)):
photos.append(j)
for i in photos:
with open(f"{directory}/{i}", 'rb') as photo:
print('Отправляю фото')
await bot.send_photo(chat_id=channels, photo=photo, caption=f'{hlink(one, url=two)}\n'
f'{hlink(two, url=two)}\n'
f'{hlink(three, url=two)}',
reply_markup=good_or_bad_keyboard)
await asyncio.sleep(61)
else:
print('Сработал else')
while True:
try:
print('Выхожу из цикла')
await dp.start_polling()
finally:
await dp.storage.close()
await dp.storage.wait_closed()
await bot.session.close()
if name == 'main':
try:
asyncio.run(main())
except (KeyboardInterrupt, SystemExit):
logger.error("Bot stopped!"), нужно чтобы посты отправлялись в указаное время, как это реализовать, наверное все попробувал, как сделать чтобы оно работало?
А что пробувал?
что-то кода мало, давай больше в чат кидай, правила же не читаем
Согласен, что нашкрябал, то и скинул, могу тебе в ЛС скинуть, чтобы чат не тревожить, как раз и поможешь)
честно говоря какое-то лютое дерьмо, два бесконечных цикла, при этом поллинг в бесконечном цикле запускаешь и какую-то дичь выполняешь
Как тебе курсы от латента?
Обсуждают сегодня