You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让发送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库,语法更直观,适合需要管理多个定时任务的场景。

步骤:

  1. 先安装schedule库:
pip install schedule
  1. 修改后的代码示例:
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):

  1. 打开终端,输入命令编辑crontab:
crontab -e
  1. 添加以下内容(替换成你的Python路径和脚本路径):
*/30 * * * * /usr/bin/python3 /path/to/your/script.py
  • */30 * * * * 表示每30分钟执行一次
  • /usr/bin/python3 是你的Python解释器路径,可通过which python3查看
  • /path/to/your/script.py 是脚本文件的绝对路径

Windows(使用任务计划程序):

  1. 打开「任务计划程序」,点击「创建基本任务」
  2. 设置任务名称,触发器选择「每天」,再设置重复间隔为30分钟,持续时间选「无限期」
  3. 操作选择「启动程序」,程序或脚本选择你的Python解释器(如python.exe路径),添加参数填写脚本文件路径
  4. 完成设置后,任务会每30分钟自动执行一次脚本

内容的提问来源于stack exchange,提问作者Hijoka

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 07:10:33