Je fais généralement un RPA localement avec du sélénium ou du pyautogui et j'automatise le travail qui comporte de nombreuses procédures ennuyeuses </ s> et cause des erreurs humaines, mais ce sera gênant si cela ne continue pas à fonctionner en ligne.
Mais je ne sais pas comment y arriver.
J'ai essayé de toucher Django et Flask, mais je ne comprends toujours pas ce que c'est, alors je l'ai fait avec un discordbot pour le TRPG de ma connaissance et j'ai appris en jouant.
Bot Discord pratique en Python (explication discordante) Il y a un dieu, alors je l'ai utilisé comme référence.
discord.py
Abréviation
if message.content == '/yagi':
result = "Mmm"
await message.channel.send(result)
Avec cela, j'ai pu essentiellement renvoyer une réponse à la commande. Ensuite, vous pouvez répondre à la commande / yagi.
Et s'il y a un jet de dés -Spécifier une commande ・ Ecrire le processus ·revenir Vous pouvez le compléter avec. (Pensée amateur)
discord.py
Abréviation
s = message.content
dicecheck = re.match('^/[1-9]{1}[D]', s)
if dicecheck:
dice = 1
else:
dice = 0
S'il est écrit comme / nDN, il est jugé qu'il s'agit d'un jet de dé.
discord.py
Abréviation
if dice > 0:
await message.channel.send('Ne le manquez pas!')
i = 0
count = int(message.content[1:2]) + 1
dim = int(message.content[3:])
lst = []
for i in range(1, count):
rand_num = random.randint(1, dim)
lst.append(rand_num)
await message.channel.send(lst)
Oh, jetons un sort magique qui disparaîtra.
J'ai essayé de le déployer.
Ouais, je touche. C'est pourquoi j'ai pu le faire sans problème jusqu'à présent, je vais donc essayer de voir si le sélénium fonctionne avec le bot déployé dans heroku.
discord.py
Abréviation
options = Options()
options.binary_location = '/app/.apt/usr/bin/google-chrome'
options.add_argument('--headless')
options.add_argument('--disable-gpu')
browser = webdriver.Chrome(options=options)
browser.implicitly_wait(10)
En conséquence, j'ai pu accepter cela. (L'ajout de sélénium et de chrome à heroku est requis séparément) Après cela, je sens que je ferai de mon mieux pour find_element.
Ensuite, vous pouvez faire une belle soupe, non? Quand
discord.py
Abréviation
elif message.content == '/Secouer':
res = requests.get('http://www.jma.go.jp/jp/quake/00000000093.html')
soup = BeautifulSoup(res.text, 'html.parser')
result = soup.select_one('table.textframe').get_text(strip=True)
await message.channel.send(result)
Après cela, j'ai pensé qu'il serait pratique d'ouvrir un navigateur, mais webbrowser.open_new est inutile (naturellement ...) Alors, trichons en en faisant une URL si quelque chose comme le format URL de Discord est écrit ici. Il suffit de bouger!
discord.py
Abréviation
elif message.content == '/Chercher':
await message.channel.send("https://www.google.co.jp")
Solution. Le muscle résout tout.
Ainsi, même un amateur qui ne connaissait pas heroku ou ne se déplaçait pas du tout pouvait le faire. Qiita est le meilleur ...
Après cela, vous pouvez l'étendre en rendant la partie de commande floue ou en y ajoutant un traitement. Je ne fais pas de TRPG, donc je ne sais pas quelle est la fonction ...
Recommended Posts