如何让发送Discord请求的Python脚本每30分钟重复执行?
实现Python脚本每30分钟重复执行的几种方法
下面提供三种可行方案,可根据需求选择:
1. 用time.sleep实现基础循环(无需额外依赖)
把发送请求的逻辑封装成函数,通过循环+睡眠的方式重复执行,每次执行后等待30分钟。这种方式简单直接,适合快速实现。
修改后的代码示例:
import requests import time def send_discord_message(): # 优化字符串写法,用三重引号让内容更清晰 payload = { 'content': """Smurf Supply Grand opening! Fresh League of Legends NA accounts 40-50k BE Email Unverified Payment methods: Paypal/Crypto Price : 0.85 USD Bulk discounts DM ME Giveaway 10X accounts in bio https://shoppy.gg/@Hijoka""" } header = { 'authorization': 'MTAzNTMwNDMwNTIxMDcwMzk0Mg.G7ZkQI.SJZUo_4o-_z6fmw0TQUTlWHrTXvhAMSRlWOMN4' } try: r = requests.post( "https://discord.com/api/v9/channels/1052679335221411901/messages", json=payload, headers=header ) # 可选:打印状态码方便排查问题 print(f"请求发送完成,状态码: {r.status_code}") except Exception as e: print(f"请求出错: {str(e)}") # 循环执行,每30分钟一次 while True: send_discord_message() # 30分钟 = 30*60秒 time.sleep(30 * 60)
2. 使用schedule库(更优雅的定时任务管理)
schedule是专门用于定时任务的Python库,语法更直观,适合需要管理多个定时任务的场景。
步骤:
- 先安装schedule库:
pip install schedule
- 修改后的代码示例:
import requests import schedule import time def send_discord_message(): payload = { 'content': """Smurf Supply Grand opening! Fresh League of Legends NA accounts 40-50k BE Email Unverified Payment methods: Paypal/Crypto Price : 0.85 USD Bulk discounts DM ME Giveaway 10X accounts in bio https://shoppy.gg/@Hijoka""" } header = { 'authorization': 'MTAzNTMwNDMwNTIxMDcwMzk0Mg.G7ZkQI.SJZUo_4o-_z6fmw0TQUTlWHrTXvhAMSRlWOMN4' } try: r = requests.post( "https://discord.com/api/v9/channels/1052679335221411901/messages", json=payload, headers=header ) print(f"请求发送完成,状态码: {r.status_code}") except Exception as e: print(f"请求出错: {str(e)}") # 设置每30分钟执行一次任务 schedule.every(30).minutes.do(send_discord_message) # 启动任务循环 while True: schedule.run_pending() time.sleep(1)
3. 用操作系统定时任务(长期稳定运行首选)
如果需要脚本长期后台运行,建议直接用操作系统自带的定时任务工具,无需让Python脚本持续运行。
Linux/macOS(使用cron):
- 打开终端,输入命令编辑crontab:
crontab -e
- 添加以下内容(替换成你的Python路径和脚本路径):
*/30 * * * * /usr/bin/python3 /path/to/your/script.py
*/30 * * * *表示每30分钟执行一次/usr/bin/python3是你的Python解释器路径,可通过which python3查看/path/to/your/script.py是脚本文件的绝对路径
Windows(使用任务计划程序):
- 打开「任务计划程序」,点击「创建基本任务」
- 设置任务名称,触发器选择「每天」,再设置重复间隔为30分钟,持续时间选「无限期」
- 操作选择「启动程序」,程序或脚本选择你的Python解释器(如
python.exe路径),添加参数填写脚本文件路径 - 完成设置后,任务会每30分钟自动执行一次脚本
内容的提问来源于stack exchange,提问作者Hijoka
相关产品推荐
相关产品推荐

