Python으로 간단한 Discord Bot을 만드는 방법
덧붙여 2019/5/11
discord.py
의 사용법이 다소 변경되고 있었으므로, 이 기사에 쓰여져 있는 코드를 새로운 것으로 수정했습니다. @1ntegrale9 씨보고 감사합니다.이번에 만드는 것
Discord에서 "안녕하세요"를 입력하면 "안녕하세요, "사용자 이름"씨!"라고 대답하는 간단한 Bot을 만듭니다. 나중에 반응하는 단어를 바꿀 수 있습니다.
거의 공식 Github 에 있는 퀵 스타트와 같은 내용입니다.
Discord란?
최근에 하고 있는 게이머용 채팅 앱입니다. Slack과 조금 비슷하고 봇이 개발하기 쉬운 환경입니다.
미리 해 두는 것
최근에 하고 있는 게이머용 채팅 앱입니다. Slack과 조금 비슷하고 봇이 개발하기 쉬운 환경입니다.
미리 해 두는 것
Python3 환경 만들기
discord.py 다운로드
discord.py를 pip를 사용하여 설치합니다.
python3 -m pip install -U discord.py
Bot용 토큰을 받으세요.
디스코드 개발자 사이트로 이동하여 새 Bot을 등록합니다.
먼저 Applications에서 Create an Application을 클릭합니다.
그런 다음 NAME에 내 봇의 이름을 쓰고 Create를 클릭합니다.

왼쪽의 Bot 열로 이동하여 Add Bot을 클릭하여 Yes, do it!


또한 같은 페이지의 TOKEN 입력란에 가서 Click to Reveal Token을 클릭하여 Token을 확인합니다 (나중에 사용)

마지막으로 왼쪽에 있는 OAuth2 열로 이동합니다.
OAuth2 URL GRNERATOR 아래에 많은 체크 박스가 있다고 생각하기 때문에, Bot 만이 체크된 상태로, 아래에 표시되고 있는 URL를 카피합니다.

복사한 URL로 이동하면 다음과 같은 화면이 표시됩니다.

자신의 서버를 선택하고 추가합니다.
Bot 쓰기
실제로 쓰자.
먼저 discord.py 패키지를 가져옵니다.
import discord
client = discord.Client()
그런 다음 Bot이 로그인하고 준비가 완료되면 처리를 작성합니다.
(코피페라도 좋다고 생각합니다)
@client.event
async def on_ready():
print('Logged in as')
print(client.user.name)
print(client.user.id)
print('------')
답장을 주는 코드 작성
@client.event
async def on_message(message):
# 「おはよう」で始まるか調べる
if message.content.startswith("おはよう"):
# 送り主がBotだった場合反応したくないので
if client.user != message.author:
# メッセージを書きます
m = "おはようございます" + message.author.name + "さん!"
# メッセージが送られてきたチャンネルへメッセージを送ります
await message.channel.send(m)
마지막으로 Bot을 시작합니다.
# token にDiscordのデベロッパサイトで取得したトークンを入れてください
client.run("token")
전체 코드를 함께 쓰면
main.pyimport discord
client = discord.Client()
@client.event
async def on_ready():
print('Logged in as')
print(client.user.name)
print(client.user.id)
print('------')
@client.event
async def on_message(message):
# 「おはよう」で始まるか調べる
if message.content.startswith("おはよう"):
# 送り主がBotだった場合反応したくないので
if client.user != message.author:
# メッセージを書きます
m = "おはようございます" + message.author.name + "さん!"
# メッセージが送られてきたチャンネルへメッセージを送ります
await message.channel.send(m)
client.run("token")
실행해 보자.
저장된 파일을 실행해 봅시다.
$ python main.py
Logged in as
ユーザー名
ID
------
이것이 출력되면 성공적으로 실행할 수 있습니다.
마지막으로 Discord에 가서 Bot이 있는 그룹에서 "안녕하세요"라고 치면 대답이 돌아올 것입니다!
마지막으로
반응하는 말이나 대답은 간단하게 바꿀 수 있습니다만 다른 처리를 넣으려고 했을 때는 async
가 되어 있는 것을 고려해 보세요.
참고
discord.py의 공식 Github
Reference
이 문제에 관하여(Python으로 간단한 Discord Bot을 만드는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/PinappleHunter/items/af4ccdbb04727437477f
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
python3 -m pip install -U discord.py
디스코드 개발자 사이트로 이동하여 새 Bot을 등록합니다.
먼저 Applications에서 Create an Application을 클릭합니다.
그런 다음 NAME에 내 봇의 이름을 쓰고 Create를 클릭합니다.

왼쪽의 Bot 열로 이동하여 Add Bot을 클릭하여 Yes, do it!


또한 같은 페이지의 TOKEN 입력란에 가서 Click to Reveal Token을 클릭하여 Token을 확인합니다 (나중에 사용)

마지막으로 왼쪽에 있는 OAuth2 열로 이동합니다.
OAuth2 URL GRNERATOR 아래에 많은 체크 박스가 있다고 생각하기 때문에, Bot 만이 체크된 상태로, 아래에 표시되고 있는 URL를 카피합니다.

복사한 URL로 이동하면 다음과 같은 화면이 표시됩니다.

자신의 서버를 선택하고 추가합니다.
Bot 쓰기
실제로 쓰자.
먼저 discord.py 패키지를 가져옵니다.
import discord
client = discord.Client()
그런 다음 Bot이 로그인하고 준비가 완료되면 처리를 작성합니다.
(코피페라도 좋다고 생각합니다)
@client.event
async def on_ready():
print('Logged in as')
print(client.user.name)
print(client.user.id)
print('------')
답장을 주는 코드 작성
@client.event
async def on_message(message):
# 「おはよう」で始まるか調べる
if message.content.startswith("おはよう"):
# 送り主がBotだった場合反応したくないので
if client.user != message.author:
# メッセージを書きます
m = "おはようございます" + message.author.name + "さん!"
# メッセージが送られてきたチャンネルへメッセージを送ります
await message.channel.send(m)
마지막으로 Bot을 시작합니다.
# token にDiscordのデベロッパサイトで取得したトークンを入れてください
client.run("token")
전체 코드를 함께 쓰면
main.pyimport discord
client = discord.Client()
@client.event
async def on_ready():
print('Logged in as')
print(client.user.name)
print(client.user.id)
print('------')
@client.event
async def on_message(message):
# 「おはよう」で始まるか調べる
if message.content.startswith("おはよう"):
# 送り主がBotだった場合反応したくないので
if client.user != message.author:
# メッセージを書きます
m = "おはようございます" + message.author.name + "さん!"
# メッセージが送られてきたチャンネルへメッセージを送ります
await message.channel.send(m)
client.run("token")
실행해 보자.
저장된 파일을 실행해 봅시다.
$ python main.py
Logged in as
ユーザー名
ID
------
이것이 출력되면 성공적으로 실행할 수 있습니다.
마지막으로 Discord에 가서 Bot이 있는 그룹에서 "안녕하세요"라고 치면 대답이 돌아올 것입니다!
마지막으로
반응하는 말이나 대답은 간단하게 바꿀 수 있습니다만 다른 처리를 넣으려고 했을 때는 async
가 되어 있는 것을 고려해 보세요.
참고
discord.py의 공식 Github
Reference
이 문제에 관하여(Python으로 간단한 Discord Bot을 만드는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/PinappleHunter/items/af4ccdbb04727437477f
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
import discord
client = discord.Client()
@client.event
async def on_ready():
print('Logged in as')
print(client.user.name)
print(client.user.id)
print('------')
@client.event
async def on_message(message):
# 「おはよう」で始まるか調べる
if message.content.startswith("おはよう"):
# 送り主がBotだった場合反応したくないので
if client.user != message.author:
# メッセージを書きます
m = "おはようございます" + message.author.name + "さん!"
# メッセージが送られてきたチャンネルへメッセージを送ります
await message.channel.send(m)
# token にDiscordのデベロッパサイトで取得したトークンを入れてください
client.run("token")
import discord
client = discord.Client()
@client.event
async def on_ready():
print('Logged in as')
print(client.user.name)
print(client.user.id)
print('------')
@client.event
async def on_message(message):
# 「おはよう」で始まるか調べる
if message.content.startswith("おはよう"):
# 送り主がBotだった場合反応したくないので
if client.user != message.author:
# メッセージを書きます
m = "おはようございます" + message.author.name + "さん!"
# メッセージが送られてきたチャンネルへメッセージを送ります
await message.channel.send(m)
client.run("token")
저장된 파일을 실행해 봅시다.
$ python main.py
Logged in as
ユーザー名
ID
------
이것이 출력되면 성공적으로 실행할 수 있습니다.
마지막으로 Discord에 가서 Bot이 있는 그룹에서 "안녕하세요"라고 치면 대답이 돌아올 것입니다!
마지막으로
반응하는 말이나 대답은 간단하게 바꿀 수 있습니다만 다른 처리를 넣으려고 했을 때는 async
가 되어 있는 것을 고려해 보세요.
참고
discord.py의 공식 Github
Reference
이 문제에 관하여(Python으로 간단한 Discord Bot을 만드는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/PinappleHunter/items/af4ccdbb04727437477f
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
discord.py의 공식 Github
Reference
이 문제에 관하여(Python으로 간단한 Discord Bot을 만드는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/PinappleHunter/items/af4ccdbb04727437477f텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)