Как определить, когда сообщение имеет определенное количество реакций discord.py - PullRequest
0 голосов
/ 21 января 2020

У меня есть следующий код:

import discord
import random
from discord.ext import commands, tasks
import os
import time
import asyncio
import re
import urllib.request
import json
from apiclient.discovery import build
from itertools import product, cycle
from discord.ext.tasks import loop
import requests
from discord.utils import get


client = commands.Bot(command_prefix='v!', description='fff', case_insensitive=True)

token = ''
client.remove_command("help")


@client.command(pass_context=True)
async def Ban(ctx, member: discord.Member):
    members = []

    a = (ctx.author)

    m = str(ctx.message.content).lower()
    m = m.replace("v!ban ", '')
    print(m)

    with open('members.txt', 'a', encoding="UTF-8") as f:
        for mem in ctx.guild.members:
            f.write(str(mem) + '\n')

    with open('members.txt', 'r', encoding="UTF-8") as f:
        members = f.read().split('\n')

    if not ctx.message.mentions:
        pass

    else:
        victim = str(member)
        print(victim + ' mention')

    x = True
    out = 1
    of = 5

    if victim in members:
        if victim == str(a):
            await ctx.channel.send('You cannot start a vote on yourself.')
        else:
            vote_msg = await ctx.channel.send(
                'Vote ' + '@' + str(member) + ' out of the server? **' + str(out) + '/' + str(of) + '**')
            await vote_msg.add_reaction('✅')
            await vote_msg.add_reaction('❎')
            id = vote_msg.id
            while out < 2:
                print(vote_msg.reactions)

    else:
        return


@client.event
async def on_ready():
    print('Logged in as')
    print(client.user.name)
    print(client.user.id)
    print('------')
    await client.change_presence(activity=discord.Game("v!help"))


client.run(token)

Я пытаюсь определить, сколько реакций имеет сообщение, чтобы можно было выполнить функцию, как это можно сделать? Мой код работает, когда кто-то выполняет команду v!ban (username) Затем он отправит сообщение с двумя реакциями, я хочу иметь возможность получить их значение (сколько раз люди реагировали на него).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...