Этот код у меня исправно работает на своем пк, но когда я загружаю его на сервер, ничего не происходит, даже ошибок не появляется
main.py
import asyncio
from telegram_bot import start_telegram
from discord_bot import start_discord_relax
from discord_bot_fast import start_discord_fast
from day_limit import timer
if __name__ == '__main__':
loop = asyncio.get_event_loop()
# loop.create_task(start_discord_fast())
# loop.create_task(start_discord_relax())
# loop.create_task(start_telegram())
loop.create_task(timer())
try:
loop.run_forever()
except KeyboardInterrupt:
pass
finally:
loop.close()
day_limit.py
import schedule
from tool_sqlbase import SQLUsers
import asyncio
def up():
SQLUsers("users").update_db()
async def timer():
schedule.every().day.at("09:51").do(up)
while True:
schedule.run_pending()
await asyncio.sleep(60)
tool_sqlbase.py
def update_db(self):
self.cursor.execute(f'UPDATE {self.basename} SET day_limit=20 WHERE day_limit!=-1')
self.conn.commit()
Тут скорее вопрос, почему это локально работает. async def timer() ... if __name__ == '__main__': timer() Что это должно значить? И зачем две точки входа вообще?
А что должно происходить?
Sql запрос каждый день в 7 часов выполняться
Обсуждают сегодня