1. <tfoot id='qgCIc'></tfoot>
      <legend id='qgCIc'><style id='qgCIc'><dir id='qgCIc'><q id='qgCIc'></q></dir></style></legend>

        • <bdo id='qgCIc'></bdo><ul id='qgCIc'></ul>

        <i id='qgCIc'><tr id='qgCIc'><dt id='qgCIc'><q id='qgCIc'><span id='qgCIc'><b id='qgCIc'><form id='qgCIc'><ins id='qgCIc'></ins><ul id='qgCIc'></ul><sub id='qgCIc'></sub></form><legend id='qgCIc'></legend><bdo id='qgCIc'><pre id='qgCIc'><center id='qgCIc'></center></pre></bdo></b><th id='qgCIc'></th></span></q></dt></tr></i><div id='qgCIc'><tfoot id='qgCIc'></tfoot><dl id='qgCIc'><fieldset id='qgCIc'></fieldset></dl></div>
      1. <small id='qgCIc'></small><noframes id='qgCIc'>

        根据 UTC 时间制作 discord.py(重写版本)计时器

        时间:2023-10-11
        • <tfoot id='V2nil'></tfoot>

              <tbody id='V2nil'></tbody>

            <i id='V2nil'><tr id='V2nil'><dt id='V2nil'><q id='V2nil'><span id='V2nil'><b id='V2nil'><form id='V2nil'><ins id='V2nil'></ins><ul id='V2nil'></ul><sub id='V2nil'></sub></form><legend id='V2nil'></legend><bdo id='V2nil'><pre id='V2nil'><center id='V2nil'></center></pre></bdo></b><th id='V2nil'></th></span></q></dt></tr></i><div id='V2nil'><tfoot id='V2nil'></tfoot><dl id='V2nil'><fieldset id='V2nil'></fieldset></dl></div>

            1. <small id='V2nil'></small><noframes id='V2nil'>

              <legend id='V2nil'><style id='V2nil'><dir id='V2nil'><q id='V2nil'></q></dir></style></legend>
                • <bdo id='V2nil'></bdo><ul id='V2nil'></ul>
                  本文介绍了根据 UTC 时间制作 discord.py(重写版本)计时器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

                  问题描述

                  我想添加一个基于 UTC 时间的计时器来刷新我每天下载的 API 文件.我正在使用 Discord.py 的重写版本.这就是我在下面制作的方式:

                  I want to add a timer based off of UTC time to refresh my API files that I download daily. I am using the rewrite version of Discord.py. This is how I made it below:

                  @client.event
                  # Updates API files daily
                  async def clock_timer():
                      from datetime import datetime
                      import pytz
                  
                      datetime_utc = datetime.now(pytz.utc)
                  
                      await datetime_utc.strftime("%H:%M:%S") == "03:00:00"
                      if datetime_utc.strftime("%H:%M:%S") == "03:00:00":
                          processes.api_grabber()
                  

                  我这样做对吗?

                  推荐答案

                  await datetime_utc.strftime("%H:%M:%S") == "03:00:00" 不是一个有效的语句,你需要做的是获取 time_delta 并一直休眠.

                  await datetime_utc.strftime("%H:%M:%S") == "03:00:00" is not a valid statement, what you need to do is get the time_delta and sleep till that.

                  datetime_utc = datetime.now(pytz.utc)
                  three_am_tmr = datetime_utc.replace(hour=3, minute=0, second=0) + timedelta(days=1)
                  delta = (three_am_tmr - datetime_utc).total_seconds()
                  await asyncio.sleep(delta)
                  #process api here
                  

                  但是,如果您希望计时器每天执行,您必须使用 discord.py 任务或类似 APS

                  However if you want the timer to execute daily, you have to use a discord.py task or something like APS

                  from discord.ext import tasks
                  
                  @tasks.loop(days=1)
                  async def grab(something):
                       #proccess api here
                  
                  
                  @grab.before_loop()
                  async def waiter():
                     datetime_utc = datetime.now(pytz.utc)
                     three_am_tmr = datetime_utc.replace(hour=3, minute=0, second=0) + 
                     timedelta(days=1)
                     delta = (three_am_tmr - datetime_utc).total_seconds()
                     await asyncio.sleep(delta)
                  
                  #start task in a command
                  

                  参考资料:

                  • 日期时间
                  • 任务
                  • 这篇关于根据 UTC 时间制作 discord.py(重写版本)计时器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持html5模板网!

                  上一篇:我怎样才能有两个相互对抗的命令装饰器? 下一篇:切换反广告 discord.py

                  相关文章

                  最新文章

                  <legend id='BL8EI'><style id='BL8EI'><dir id='BL8EI'><q id='BL8EI'></q></dir></style></legend>
                  1. <small id='BL8EI'></small><noframes id='BL8EI'>

                    1. <tfoot id='BL8EI'></tfoot>
                      <i id='BL8EI'><tr id='BL8EI'><dt id='BL8EI'><q id='BL8EI'><span id='BL8EI'><b id='BL8EI'><form id='BL8EI'><ins id='BL8EI'></ins><ul id='BL8EI'></ul><sub id='BL8EI'></sub></form><legend id='BL8EI'></legend><bdo id='BL8EI'><pre id='BL8EI'><center id='BL8EI'></center></pre></bdo></b><th id='BL8EI'></th></span></q></dt></tr></i><div id='BL8EI'><tfoot id='BL8EI'></tfoot><dl id='BL8EI'><fieldset id='BL8EI'></fieldset></dl></div>
                      • <bdo id='BL8EI'></bdo><ul id='BL8EI'></ul>