Le titre est incroyable, mais le contenu est l'histoire de la création normale d'un Discord Bot.
if not message.author.id == client.user.id:
ms = message.content #jugement de la commande d'image
ms = ms[:6] #Le jugement est effectué en supprimant uniquement les six premiers caractères de tous les messages
if ms == "!image":
overlap = 0
ms = (message.content[7:]) #ms n'est qu'un message(!Raser l'image)
filepath1 = "./downloads" #Pour rejoindre plus tard
files1 = os.listdir(filepath1) #J'ai mis tous les noms de répertoires dans des fichiers
leng = len(files1) #Déterminez la longueur du tableau de fichiers
i = 0
for i in range(leng):
if ms == files1[i]:
overlap = 1
break
i += 1
if overlap == 1:
print("J'ai utilisé une image locale sans grattage") #Pour confirmation
filepath = './downloads/' + ms + "/" #Où se trouve le fichier
files = os.listdir(filepath) #J'ai mis le nom du contenu du fichier dans une variable
files = files[0] #Puisqu'il entre dans un tableau, c'est le premier d'entre eux
path1 = filepath + files #Générer le chemin final de l'image
await message.channel.send(file=discord.File(path1)) #Envoyer l'image
else:
print("J'ai gratté car je ne pouvais pas voir l'image localement") #Pour confirmation
response = google_images_download.googleimagesdownload() #Bibliothèque de récupération d'images Google
arguments = {"keywords": ms, "limit":1,"print_urls":True}#Mot de recherche et nombre de feuilles spécifié
paths = response.download(arguments) #Grattage,
print(paths) #Journal de sortie
ms = (message.content[7:])
filepath = './downloads/' + ms + "/" #Générer le chemin quel fichier dans le fichier
files = os.listdir(filepath) #J'ai mis le nom du contenu du fichier dans une variable
files = files[0] #Puisqu'il entre dans un tableau, c'est le premier d'entre eux
path1 = filepath + files #Générer le chemin final de l'image
print(path1)
await message.channel.send(file=discord.File(path1)) #Envoyer l'image
Puisque les caractères envoyés par l'utilisateur sont placés dans le chemin, l'utilisateur peut spécifier où les enregistrer! !! !!
Mon camarade de classe l'a découvert et le contenu de mon ordinateur a été foiré.
Des fichiers inutiles ont été créés à divers endroits, le pire est que "..." ← Un fichier avec ce nom a été créé.
Ce fichier que je ne comprends pas semble être un bogue dans Windows. "..." Lorsque vous ouvrez ceci, le répertoire précédent s'ouvre.
Donc, si vous avez ce fichier dans Desktop, lorsque vous l'ouvrez, vous trouverez Desktop à l'intérieur.
De plus, le fichier ne peut pas être supprimé normalement, même avec l'invite de commande Windows ou rm ... ''
...
Alors je l'ai effacé avec Cygwin. C'était difficile à effacer.
___ Vous devez absolument arrêter d'exécuter ces services sur votre PC principal ___
Sera ** aux méchants
DiscordBot/ ├ discordbot.py └ img/ ├ hare.png ├ harekumorri.png ├ jikoku.png ├ kumori.png └ downloads
discord.py
import datetime
import io
import os
import time
import aiohttp
import discord
import requests
import schedule
from discord.ext import commands
from google_images_download import google_images_download
from PIL import Image, ImageDraw, ImageFont, ImageTk
#Remplacez par le jeton d'accès de votre bot
TOKEN = "Mon jeton"
#Générer les objets nécessaires à la connexion
client = discord.Client()
#Traitement qui fonctionne au démarrage
@client.event
async def on_ready():
#Une notification de connexion sera affichée dans le terminal après le démarrage
print('Vous êtes maintenant connecté')
@client.event
async def on_message(message):
#Ignorer si l'expéditeur du message est Bot
if message.author.bot:
return
# 「/Traitement qui renvoie "Nyan" lorsque vous dites "neko"
if message.content == '/neko':
await message.channel.send('Nyan')
if message.content == '/konn':
t_now = datetime.datetime.now().time()
t_now = str(t_now)
t_now = t_now[:2]
print(t_now)
t_now = int(t_now)
print(type(t_now))
print(t_now)
if 5 <= t_now < 12:
await message.channel.send('Bonjour')
elif 12 <= t_now < 18:
await message.channel.send('Bonjour')
elif 18 <= t_now < 24:
await message.channel.send('Bonsoir')
elif 0 <= t_now < 5:
await message.channel.send('Il est tard le soir! Allons dormir!')
if message.content == 'La météo de demain':
url = 'http://weather.livedoor.com/forecast/webservice/json/v1?city=130010'
api_data = requests.get(url).json()
weather = api_data['forecasts'][1]
result = weather["telop"]
await message.channel.send(api_data['title'] + '\n' 'La météo de demain' + result)
if result == "Ensoleillé":
await message.channel.send(file=discord.File('./img/hare.png'))
elif result == "Nuageux":
await message.channel.send(file=discord.File("./img/kumori.png "))
else:
await message.channel.send(file=discord.File("./img/harekumori.jpg "))
if message.content == 'La météo d'aujourd'hui':
url = 'http://weather.livedoor.com/forecast/webservice/json/v1?city=130010'
api_data = requests.get(url).json()
weather = api_data['forecasts'][0]
result = weather["telop"]
await message.channel.send(api_data['title'] + '\n' 'Quel temps fait-il aujourd'hui' + result)
if result == "Ensoleillé":
await message.channel.send(file=discord.File('.\\img\\hare.png'))
elif result == "Nuageux":
await message.channel.send(file=discord.File(".\\img\\kumori.jpg "))
else:
await message.channel.send(file=discord.File(".\\img\\harekumori.png "))
if message.content == 'Commande top secret>>Caca<<':
await message.channel.send('https://i.gzn.jp/img/2017/10/19/golden-unko-jewelry/00_m.jpg')
# if message.content == 'Non':
# ar1t = (
# '```(≧Д≦)' + '\n' +
# '....................... ,,, z = ~' '+' 彡 ,, '+' \ n '+
# '...................., i' ............ "':';:; tsu;, '+' \ n '+
# '................' '' '' '' ' n '+
# '.........., / ....... `, Gumi .....:;:,' + '\ n' +
# '......... / .......... = ヾ, ヾ = ;, z, .......... ‥; ヾ :: ミ' + '\ n' +
# '....... / ........, r,' ... /. '`ヽ. ヽ. ヽ ........ \ n '+
# '..... / ......,' -, .` ヽ ..................... ミ; :: 彡;: '+ '\ n' +
# '...,' ....., Shi'` ヽ ʻi`! ................ ,, 彡; :: Shi: 彡 '+' \ n '+
# '..; ....., ('  ̄` ヽ / '.............. Shi: Shi ;: Mi :: Shi "' + '\ n' +
# '´ :::::. ヾ .....  ̄´ ..............' `, simi '+' \ n '+
# ':::::::::::::. `: ヽ, .................:;
# 'Nahhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh```')
# await message.channel.send(ar1t)
if client.user in message.mentions:
reply = f'{message.author.mention}appelé?'
await message.channel.send(reply)
if message.content == 'Heures du jour':
#Chargement des images
img = Image.open("./img/jikoku.png ")
#Créer une instance de dessin
draw = ImageDraw.Draw(img)
#Paramètres de police(Chemin du fichier de police et taille de la police)
font = ImageFont.truetype("./fonts/BIZ-UDGothicB.ttc", 200)
#Écrire des lettres
dt = datetime.datetime.now()
dt = str(dt)
dt = (dt[11:-10])
print(dt)
draw.text((310, 250), dt, fill=(0, 0, 0), font=font)
img.save("./img/jikoku1.png ")
print("ok")
await message.channel.send(file=discord.File(".\\img\\jikoku1.png "))
if message.content == 'Augmentation d'impôt':
await message.channel.send('https://pbs.twimg.com/media/EFUS5YlU0AIAwok?format=jpg&name=small')
if message.content == 'kusa':
await message.channel.send(file=discord.File('.\\img\\kusa.jpg'))
if message.content == 'Enfant mignon':
await message.channel.send(file=discord.File('.\\img\\1.jpg'))
if message.content == "Comme c'est gentil":
await message.channel.send(file=discord.File('.\\img\\good.png'))
if not message.author.id == client.user.id:
ms = message.content #jugement de la commande d'image
ms = ms[:6] #Le jugement est effectué en supprimant uniquement les six premiers caractères de tous les messages
if ms == "!image":
overlap = 0
ms = (message.content[7:]) #ms n'est qu'un message(!Raser l'image)
filepath1 = "./downloads" #Pour rejoindre plus tard
files1 = os.listdir(filepath1) #J'ai mis tous les noms de répertoires dans des fichiers
leng = len(files1) #Déterminez la longueur du tableau de fichiers
i = 0
for i in range(leng):
if ms == files1[i]:
overlap = 1
break
i += 1
if overlap == 1:
print("J'ai utilisé une image locale sans grattage") #Pour confirmation
filepath = './downloads/' + ms + "/" #Où se trouve le fichier
files = os.listdir(filepath) #J'ai mis le nom du contenu du fichier dans une variable
files = files[0] #Puisqu'il entre dans un tableau, c'est le premier d'entre eux
path1 = filepath + files #Générer le chemin final de l'image
await message.channel.send(file=discord.File(path1)) #Envoyer l'image
else:
print("J'ai gratté car je ne pouvais pas voir l'image localement") #Pour confirmation
response = google_images_download.googleimagesdownload() #Bibliothèque de récupération d'images Google
arguments = {"keywords": ms, "limit":1,"print_urls":True}#Mot de recherche et nombre de feuilles spécifié
paths = response.download(arguments) #Grattage,
print(paths) #Journal de sortie
ms = (message.content[7:])
filepath = './downloads/' + ms + "/" #Générer le chemin quel fichier dans le fichier
files = os.listdir(filepath) #J'ai mis le nom du contenu du fichier dans une variable
files = files[0] #Puisqu'il entre dans un tableau, c'est le premier d'entre eux
path1 = filepath + files #Générer le chemin final de l'image
print(path1)
await message.channel.send(file=discord.File(path1)) #Envoyer l'image
if message.content == "Histoire":
files1 = os.listdir("./downloads")
await message.chnanel.send(files1)
print("Commande historique")
if message.content == "!helpC":
await message.channel.send("rien de spécial")
#Lancez Bot et connectez-vous au serveur Discord
client.run(TOKEN)
Recommended Posts