Der Titel ist erstaunlich, aber der Inhalt ist die Geschichte, wie man einen Discord Bot normal macht.
if not message.author.id == client.user.id:
ms = message.content #Beurteilung des Bildbefehls
ms = ms[:6] #Die Beurteilung erfolgt, indem nur die ersten sechs Zeichen aller Nachrichten ausgeschnitten werden
if ms == "!image":
overlap = 0
ms = (message.content[7:]) #ms ist nur eine Nachricht(!Rasieren Sie das Bild)
filepath1 = "./downloads" #Um später beizutreten
files1 = os.listdir(filepath1) #Ich habe alle Verzeichnisnamen in Dateien eingefügt
leng = len(files1) #Bestimmen Sie die Länge des Array von Dateien
i = 0
for i in range(leng):
if ms == files1[i]:
overlap = 1
break
i += 1
if overlap == 1:
print("Ich habe ein Bild verwendet, das lokal ist, ohne zu kratzen") #Zur Bestätigung
filepath = './downloads/' + ms + "/" #Wo ist die Datei?
files = os.listdir(filepath) #Ich habe den Namen des Inhalts der Datei in eine Variable eingefügt
files = files[0] #Da es in ein Array eingeht, ist es das erste von ihnen
path1 = filepath + files #Generieren Sie den endgültigen Pfad des Bildes
await message.channel.send(file=discord.File(path1)) #Bild senden
else:
print("Ich habe geschabt, weil ich das Bild lokal nicht sehen konnte") #Zur Bestätigung
response = google_images_download.googleimagesdownload() #Google Image Scraping Library
arguments = {"keywords": ms, "limit":1,"print_urls":True}#Suchwort und Anzahl der angegebenen Blätter
paths = response.download(arguments) #Schaben,
print(paths) #Ausgabeprotokoll
ms = (message.content[7:])
filepath = './downloads/' + ms + "/" #Generieren Sie den Pfad für die Datei in der Datei
files = os.listdir(filepath) #Ich habe den Namen des Inhalts der Datei in eine Variable eingefügt
files = files[0] #Da es in ein Array eingeht, ist es das erste von ihnen
path1 = filepath + files #Generieren Sie den endgültigen Pfad des Bildes
print(path1)
await message.channel.send(file=discord.File(path1)) #Bild senden
Da die vom Benutzer gesendeten Zeichen in den Pfad eingefügt werden, kann der Benutzer angeben, wo sie gespeichert werden sollen! !! !!
Mein Klassenkamerad entdeckte es und der Inhalt meines Computers war durcheinander.
An verschiedenen Stellen wurden nutzlose Dateien erstellt. Das Schlimmste ist, dass "..." ← Eine Datei mit diesem Namen erstellt wurde.
Diese Datei, die ich nicht verstehe, scheint ein Fehler in Windows zu sein. "..." Wenn Sie diese öffnen, wird das vorherige Verzeichnis geöffnet.
Wenn Sie diese Datei in Desktop haben, finden Sie beim Öffnen Desktop darin.
Darüber hinaus kann die Datei auch mit der Windows-Eingabeaufforderung oder `rm ...`
... nicht normal gelöscht werden.
Also habe ich es mit Cygwin gelöscht. Es war schwer zu löschen.
___ Sie sollten auf jeden Fall aufhören, solche Dienste auf Ihrem Haupt-PC auszuführen. ___
Wird ** zu den Bösen sein
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
#Ersetzen Sie durch den Zugriffstoken Ihres Bots
TOKEN = "Mein Zeichen"
#Generieren Sie die für die Verbindung benötigten Objekte
client = discord.Client()
#Verarbeitung, die beim Start ausgeführt wird
@client.event
async def on_ready():
#Nach dem Start wird im Terminal eine Anmeldemeldung angezeigt
print('Sie sind jetzt angemeldet')
@client.event
async def on_message(message):
#Ignorieren Sie, wenn der Absender der Nachricht Bot ist
if message.author.bot:
return
# 「/Verarbeitung, die "Nyan" zurückgibt, wenn Sie "neko" sagen
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('Guten Morgen')
elif 12 <= t_now < 18:
await message.channel.send('Hallo')
elif 18 <= t_now < 24:
await message.channel.send('Guten Abend')
elif 0 <= t_now < 5:
await message.channel.send('Es ist spät in der Nacht! Lass uns schlafen!')
if message.content == 'Das Wetter von morgen':
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' 'Das Wetter von morgen' + result)
if result == "Sonnig":
await message.channel.send(file=discord.File('./img/hare.png'))
elif result == "Wolkig":
await message.channel.send(file=discord.File("./img/kumori.png "))
else:
await message.channel.send(file=discord.File("./img/harekumori.jpg "))
if message.content == 'das heutige Wetter':
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' 'Wie ist das Wetter heute' + result)
if result == "Sonnig":
await message.channel.send(file=discord.File('.\\img\\hare.png'))
elif result == "Wolkig":
await message.channel.send(file=discord.File(".\\img\\kumori.jpg "))
else:
await message.channel.send(file=discord.File(".\\img\\harekumori.png "))
if message.content == 'Streng geheimer Befehl>>Poop<<':
await message.channel.send('https://i.gzn.jp/img/2017/10/19/golden-unko-jewelry/00_m.jpg')
# if message.content == 'Nein, nein':
# ar1t = (
# '```(≧Д≦)' + '\n' +
# '....................... ,,, z = ~' '+' 彡 ,, '+' \ n '+
# '...................., i' ............ "':';:; tsu ;, '+' \ n '+
# '................' '' '' 'Mi', .............. '', ',' + '\ n '+
# '.........., / ....... `, Gumi .....:;:,' + '\ n' +
# '......... / .......... = ヾ, ヾ =;, z, .......... ‥; ヾ :: ミ' + '\ n' +
# '....... / ........, r,' ... /. '`ヽ. ヽ. ヽ` ........., 彡: Mi' + ' \ n '+
# '..... /......,'- ,.` ヽ ..................... Mi; :: 彡 ;:' + '\ n' +
# '...,' ....., Shi'` ヽ `i`! ................ ,, 彡; :: Shi: 彡 '+' \ n '+
# '..; ....., ('  ̄` ヽ / '.............. Shi: Shi;: Mi :: Shi "' + '\ n' +
# '´ :::::. ヾ .....  ̄´ ..............' `, simi '+' \ n '+
# ':::::::::::::. `: ヽ, .................:;' _, Also '" +' \ n '+
# 'Nahhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh```')
# await message.channel.send(ar1t)
if client.user in message.mentions:
reply = f'{message.author.mention}namens?'
await message.channel.send(reply)
if message.content == 'Tageszeiten':
#Bilder laden
img = Image.open("./img/jikoku.png ")
#Zeichnungsinstanz erstellen
draw = ImageDraw.Draw(img)
#Schriftarteinstellungen(Pfad der Schriftdatei und Schriftgröße)
font = ImageFont.truetype("./fonts/BIZ-UDGothicB.ttc", 200)
#Briefe schreiben
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 == 'Steuererhöhung':
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 == 'Süßes Kind':
await message.channel.send(file=discord.File('.\\img\\1.jpg'))
if message.content == "Wie schön":
await message.channel.send(file=discord.File('.\\img\\good.png'))
if not message.author.id == client.user.id:
ms = message.content #Beurteilung des Bildbefehls
ms = ms[:6] #Die Beurteilung erfolgt, indem nur die ersten sechs Zeichen aller Nachrichten ausgeschnitten werden
if ms == "!image":
overlap = 0
ms = (message.content[7:]) #ms ist nur eine Nachricht(!Rasieren Sie das Bild)
filepath1 = "./downloads" #Um später beizutreten
files1 = os.listdir(filepath1) #Ich habe alle Verzeichnisnamen in Dateien eingefügt
leng = len(files1) #Bestimmen Sie die Länge des Array von Dateien
i = 0
for i in range(leng):
if ms == files1[i]:
overlap = 1
break
i += 1
if overlap == 1:
print("Ich habe ein Bild verwendet, das lokal ist, ohne zu kratzen") #Zur Bestätigung
filepath = './downloads/' + ms + "/" #Wo ist die Datei?
files = os.listdir(filepath) #Ich habe den Namen des Inhalts der Datei in eine Variable eingefügt
files = files[0] #Da es in ein Array eingeht, ist es das erste von ihnen
path1 = filepath + files #Generieren Sie den endgültigen Pfad des Bildes
await message.channel.send(file=discord.File(path1)) #Bild senden
else:
print("Ich habe geschabt, weil ich das Bild lokal nicht sehen konnte") #Zur Bestätigung
response = google_images_download.googleimagesdownload() #Google Image Scraping Library
arguments = {"keywords": ms, "limit":1,"print_urls":True}#Suchwort und Anzahl der angegebenen Blätter
paths = response.download(arguments) #Schaben,
print(paths) #Ausgabeprotokoll
ms = (message.content[7:])
filepath = './downloads/' + ms + "/" #Generieren Sie den Pfad für die Datei in der Datei
files = os.listdir(filepath) #Ich habe den Namen des Inhalts der Datei in eine Variable eingefügt
files = files[0] #Da es in ein Array eingeht, ist es das erste von ihnen
path1 = filepath + files #Generieren Sie den endgültigen Pfad des Bildes
print(path1)
await message.channel.send(file=discord.File(path1)) #Bild senden
if message.content == "Geschichte":
files1 = os.listdir("./downloads")
await message.chnanel.send(files1)
print("Verlaufsbefehl")
if message.content == "!helpC":
await message.channel.send("nichts Besonderes")
#Starten Sie Bot und stellen Sie eine Verbindung zum Discord-Server her
client.run(TOKEN)
Recommended Posts