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

无法邀请机器人,如何用Python获取非自建Discord频道最新消息?

获取非自建Discord频道最新消息的实现方案

最佳实现路径

直接利用Discord的用户端API(而非机器人API)是最可靠的方案——机器人需要服务器管理员授权,而用户API可以模拟你自己的账号登录,访问你有权限查看的任意频道内容。

可用的Python库

  • discord.py-self:这是官方discord.py的分支,专门适配用户账号的自动化操作(注意:Discord服务条款对自动化用户账号有约束,使用前务必仔细阅读条款内容)。简单示例代码如下:
import discord
from discord.ext import commands

# 配置所需权限
intents = discord.Intents.default()
intents.message_content = True

# 初始化自机器人(用户账号客户端)
client = commands.Bot(command_prefix="!", self_bot=True, intents=intents)

@client.event
async def on_ready():
    print(f"已登录:{client.user}")
    # 替换为目标频道的ID
    target_channel = client.get_channel(123456789012345678)
    # 获取最新一条消息
    latest_msg = await target_channel.fetch_message(target_channel.last_message_id)
    print(f"最新消息内容:{latest_msg.content}")
    # 完成后退出
    await client.close()

# 替换为你的Discord用户Token(注意保密,切勿泄露)
client.run("YOUR_DISCORD_USER_TOKEN")
  • 注意:用户Token需要从Discord客户端的开发者工具中提取,一旦泄露会导致账号被盗,务必妥善保管。

图像识别的可行性分析

图像识别理论上能实现,但完全不推荐:

  • 稳定性极差:需要先对Discord界面截图,再用pytesseract等OCR工具识别文字,还要处理界面滚动、排版变化、表情/图片干扰等问题,稍有界面更新就会失效。
  • 效率低下:相比直接API调用,截图+OCR的流程耗时更长、资源占用更高。
  • 维护成本高:需要不断调整识别逻辑适配界面变化,远不如API方案省心。

风险提示

使用用户API进行自动化操作违反Discord的官方服务条款,可能导致账号被封禁。如果是个人非高频的自用场景,风险相对可控,但请谨慎操作。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 10:35:17