Discord.py bot输出到文件python

问题描述 投票:0回答:1

下面的程序应该获取用户令牌,获取bot标签,例如:(discord-bot#0241),然后通过正则表达式将其输出到文件中。

import discord

RED, CYAN, GREEN, END = '\033[91m', '\033[36m', '\033[1;32m', '\033[0m'

client = discord.Client()

token = input('Token here: ')
filename = input('File name: ')


@client.event
async def on_ready():
    botmaster = print(client.user)
    return botmaster


def config():   
    botToken = token
    botMaster = on_ready()
    print('\n[~] Configuration:\n [BOT TOKEN] =' + botToken + '\n [BOT MASTER] = ' + botMaster)
    confirm = input('\nConfirm ? (y/n) : ')
    if confirm.upper() == 'Y':
        info = 'botToken = ' + '\'' + botToken + '\'' +'\nbotMaster = ' + '\'' + botMaster + '\'' 
        with open('payload.py','r') as contents:
            save = contents.read()
        with open(fileName,'w') as contents:
            contents.write(info)
        with open(fileName,'a') as contents:
            contents.write(save)
        return('{0}[{1}*{0}]{1} Saved as ' + 'f{fileName}'.format(GREEN, END, RED))
    else:
        config()

config()

client.run(token)

我在执行此操作时遇到了麻烦,因为存在此错误,因此我试图找出解决方法。正则表达式部分是额外的,目前不在范围之内。

TypeError: can only concatenate str (not "coroutine") to str
sys:1: RuntimeWarning: coroutine 'on_ready' was never awaited

我真的不知道如何处理此错误。我到处搜索,找不到与python类似的东西。

python discord
1个回答
0
投票

您在这里选择了一件很麻烦的事情,因为它基本上要求您不是循环运行Discord客户端,而是一次性运行“使用此令牌登录并获得用户身份”方案。] >

[此外,您不应使用Python文件存储配置数据,而应使用JSON或YAML或TOML或INI或Pickle文件之类的数据格式。我在这里选择了JSON,因为它是可人工编辑的并且该模块是内置的。

© www.soinside.com 2019 - 2024. All rights reserved.