Size: a a a

2020 January 27

V

Vlad🍁 in aiogram [ru]
xM4DN355x
Добрый день))
Не подскажите, как сделать так, чтоб функция запускалась с заданной периодичностью? я ничего кроме рекурсии пока придумать не смог, но у рекурсии есть же ограничение на глубину, а хотелось бы, чтоб все работало без перезапуска скрипта время от времени))

async def channel_update_loop():
   posts = find_new_posts()
   for post in posts:
       await make_post(post)
       post['status'] = True
       update_post_from_line(post)
       sleep(5)
   del(posts)
   sleep(10)
   await channel_update_loop()


async def make_post(post):
   await bot.send_message(chat_id=CHANNEL_ID, text=f"""<b>{post['title']}</b>\n\n{post['text']}\n<a href="{post['img']}">&#8203;</a>\n<a href="{post['link']}">Ссылка на статью</a>\n{post['author']}""", reply_markup=None)
APScheduler как вариант
источник

‌‌‎lyteloli in aiogram [ru]
xM4DN355x
Добрый день))
Не подскажите, как сделать так, чтоб функция запускалась с заданной периодичностью? я ничего кроме рекурсии пока придумать не смог, но у рекурсии есть же ограничение на глубину, а хотелось бы, чтоб все работало без перезапуска скрипта время от времени))

async def channel_update_loop():
   posts = find_new_posts()
   for post in posts:
       await make_post(post)
       post['status'] = True
       update_post_from_line(post)
       sleep(5)
   del(posts)
   sleep(10)
   await channel_update_loop()


async def make_post(post):
   await bot.send_message(chat_id=CHANNEL_ID, text=f"""<b>{post['title']}</b>\n\n{post['text']}\n<a href="{post['img']}">&#8203;</a>\n<a href="{post['link']}">Ссылка на статью</a>\n{post['author']}""", reply_markup=None)
Никогда не вызывай функцию из этой же функции. Если такое нужно используй while True
источник

q

quavo in aiogram [ru]
Так вопрос к асинкерам
источник

AR

Alex RootJunior in aiogram [ru]
‌‌‎lyteloli
Никогда не вызывай функцию из этой же функции. Если такое нужно используй while True
на счет "никогда" - ты не прав, но в данном случае нужен именно цикл а не рекурсия. верно.
источник

‌‌‎lyteloli in aiogram [ru]
Alex RootJunior
на счет "никогда" - ты не прав, но в данном случае нужен именно цикл а не рекурсия. верно.
Если ты точно знаешь что ничего не может пойти не так и после несколький циклов функция завершится, то согласен
источник

q

quavo in aiogram [ru]
Есть ли смысл  вешать асинхронные запросы в отдельный поток, чтобы оттуда получать данные?
Мне кажется, что быстрее будет, если каждая моя асинхронная функция сама будет делать эти запросы
источник

q

quavo in aiogram [ru]
Опять не очень вопросы да....
источник

ЮЧ

Юрий 👨‍🔬 Чебышев in aiogram [ru]
нет это ерунда какая-то, почитай про асинк
источник

q

quavo in aiogram [ru]
Ну я уточнил да
источник

S|

Sofia | Bo in aiogram [ru]
ребят всем привет,
не подскажите почему в aiograph при загрузке фото с telegram возникает данная ошибка ?

aiohttp.client_exceptions.ContentTypeError: 0, message='Attempt to decode JSON with unexpected mimetype: text/html', url=URL('https://telegra.ph/upload')
источник

S|

Sofia | Bo in aiogram [ru]
или это дает сообщение об ограничении ?
источник

G

Gabben in aiogram [ru]
Sofia | Bo
ребят всем привет,
не подскажите почему в aiograph при загрузке фото с telegram возникает данная ошибка ?

aiohttp.client_exceptions.ContentTypeError: 0, message='Attempt to decode JSON with unexpected mimetype: text/html', url=URL('https://telegra.ph/upload')
Покажи код
источник

S|

Sofia | Bo in aiogram [ru]
# принимает сообщение, вытягивает из него file_id, загружает его на хостинг, возвращает ссылку
file_id: str = message.document.file_id
downloaded_file = await bot.download_file_by_id(file_id)
src: str = './tmp/' + file_id
async with aiofiles.open(src, 'wb') as new_file:
   await new_file.write(downloaded_file.read())
file_url: str = (await telegraph.upload(src, full=True))[0]
источник

S|

Sofia | Bo in aiogram [ru]
код ошибки
источник

𝐃𝐊

𝐃𝐚𝐧𝐢𝐢𝐥 𝐊𝐨𝐯𝐚𝐥𝐞𝐧𝐤𝐨 in aiogram [ru]
Sofia | Bo
ребят всем привет,
не подскажите почему в aiograph при загрузке фото с telegram возникает данная ошибка ?

aiohttp.client_exceptions.ContentTypeError: 0, message='Attempt to decode JSON with unexpected mimetype: text/html', url=URL('https://telegra.ph/upload')
А это точно ФОТО?
источник

S|

Sofia | Bo in aiogram [ru]
100%
источник

S|

Sofia | Bo in aiogram [ru]
один и тот же файл иногда проходит,
иногда выдает эту ошибку
источник

Forevka ÐΞV in aiogram [ru]
Sofia | Bo
один и тот же файл иногда проходит,
иногда выдает эту ошибку
дебагай
источник

S|

Sofia | Bo in aiogram [ru]
подозреваю, что мб ограничение срабатывает
источник

Forevka ÐΞV in aiogram [ru]
на кофейной гуще тут гадать не умеют
источник