개인 자료란 (JE)

  서버 커뮤니티

Profile 라고솔로가말했습니다 대표칭호 없음

SaidBySolo 8b58f951b6404b78ae3ba92d55d431f7

Profile

커뮤니티 소통 개발하기 디스코드

[6강:핑....퐁...?] 파이썬으로 디스코드봇 만들어보기

2020.05.14 조회 수 1001 추천 수 2

5강


어... 2강인가 3강인가 오래되서 기억이 안나기는한데

웹소켓 딜레이랑 메세지를 보내는 핑이 다르기때문에

메세지를  보내는 핑을 가져오는 구문을 강좌로 작성한다고 한 기억이 지금 떠올랐네요!


뭐 그렇게 어렵지 않으니 바로 가봅시다


import discord
from discord.ext import commands

bot = commands.Bot(command_prefix='!') 

token = "Token paste here"

@bot.event 
async def on_ready():
    print("실헹...... 실행이 잘되네요...?")

@bot.command() 
async def 안녕(ctx): 
    await ctx.send("안녕,세상!") 

@bot.command()
async def ping(ctx):
    latancy = bot.latency
    await ctx.send(round(latancy*1000))

@bot.command()
async def echo(ctx, *, content: str):
    await ctx.send(content)

bot.run(token)

5강까지 따라왔으면 써있을 코드



자 이론을 간단히 설명하자면

사용자가 명령어를 실행합니다.

명령어를 실행할때 바로 타이머를 세는거죠 (째깍째깍)

그러고 실행이 완료 됐을때!


짠! 딜레이가 나오는거죠

그러면 코드를 짜야겠죠... 예...


저는 측정을 하기위해서 내장 모듈인 time의 perf_counter 를 사용하겠습니다

perf_counter는 sleep함수를 호출하여 대기한 시간까지 포함하여 측정한다네요


a41d785168bda546d84b73b3e7a1fe80.png

주석참고하세욤

타이핑에 관한 docs



실행을 해볼까요?

efaff8fa292f3f255bb8f5c49d6e1997.png

디버깅 사용했습니다. 

위의 코드와 다를수있으나, 위에서 쓴코드를 쓰세요


71ms가 나오네요 미국리전이라서그런지 빠르네요


잘되는걸 확인했습니다.


이렇게 6강까지 했는데요 다음은 문의창구 기능을 만들어보겠습니다.


한달에 하나씩 쓰는꼴이니 이거원.... 


최대한 빨리 작성할수있도록 노력해보겠습니다!




4개의 댓글

Hunter
2020.05.14

오 6강 올라왔다! 다음강의도 ㅎㅇㅌ 하세요:)!

hoxy
2020.12.23

봇 다 만들고 구동. 온라인 그리고 커맨드 모두 다 돌아갑니다. 그런데 파이선을 끄거나 노트북을 끄면 봇이 오프라인이 되면서 작동을 중단하는데 계속 구동을 시키려면 어떻게 해야 하나요?

 

뉴스 및 창작물
/files/thumbnails/150/925/003/262x150.crop.jpg?20241123005717

건축

응답하라 1988 ?

팀뉴일리시

2024-11-23

4

/files/thumbnails/761/908/003/262x150.crop.jpg?20241025153749

건축

서울 숭례문(崇禮門) 5

KHC

2024-10-25

2

/files/thumbnails/578/899/003/262x150.crop.jpg?20241010142350

건축

경주 월정교 1

KHC

2024-10-10

2

/files/thumbnails/219/899/003/262x150.crop.jpg?20241009200950

건축

송전탑+도시 2

dbasd12

2024-10-09

2

/files/thumbnails/246/898/003/262x150.crop.jpg?20241008102328

레드스톤

단다단 - 오토노케(オトノケ) | 마인크래프트 노트블럭 커버

노트블럭전문가

2024-10-08

1