import discord
import requests
from bs4 import BeautifulSoup
import datetime
import re
now = str(datetime.datetime.now())
day = now[:4] + now[5:7] + now[8:10]
print(day)
# week = [0~4]
req = requests.get("http://school.cbe.go.kr/chungjuja-e/M01040504/list?ymd=")
# print(req.text)
soup = BeautifulSoup(req.text, "html.parser")
# print(soup)
element = soup.find_all("tr")
vData = []
for i in range(len(element)):
pv = element[i].find_all('td')
vData.append(pv)
c = 0
for i in range(1, len(vData)):
for j in range(1, len(vData[i])):
pv = vData[i][j]
pvk = pv
days = now[8:10]
#pv = pv.split('\n')
pv = list(pv)
if len(pv) == 3:
pv = pv[1]
pv = list(pv)
pv = pv[1]
pv = list(pv)
pv = pv[0]
if len(pv)==1:
pv = list(pv)
pv = int(pv[0])
#print('>$>$>$>', pv, int(days))
if pv == int(days):
element = pvk
#print(pvk)
element = str(element)
element = element.replace('[', '')
element = element.replace(']', '')
element = element.replace('<br/>', '\n')
element = element.replace('<td class="textC last">', '')
element = element.replace('<td class="textC">', '')
element = element.replace('</td>', '')
element = element.replace('(h)', '')
element = element.replace('.', '')
element = re.sub(r"\d", "", element)
element = element.split('\n')
data = ''
for i in range(len(element)):
#print(i, element[i])
if '<li>' in element[i]:
#print(element[i])
v = element[i]
v=v[4:]
'<li>'
v=v[:-5]
text = '&'
v = v.replace(text, "&")
#print(text)
'</li>'
data += v +'\n'
#data.append(element[i])
print(data)
print(element)
element = data
class chatbot(discord.Client):
# 프로그램이 처음 실행되었을 때 초기 구성
async def on_ready(self):
# 상태 메시지 설정
# 종류는 3가지: Game, Streaming, CustomActivity
game = discord.Game("YW봇 작동")
# 계정 상태를 변경한다.
# 온라인 상태, game 중으로 설정
await client.change_presence(status=discord.Status.online, activity=game)
# 준비가 완료되면 콘솔 창에 "READY!"라고 표시
print("READY")
# 봇에 메시지가 오면 수행 될 액션
async def on_message(self, message):
# SENDER가 BOT일 경우 반응을 하지 않도록 한다.
if message.author.bot:
return None
# message.content = message의 내용
if message.content == "!밥":
# 현재 채널을 받아옴
channel = message.channel
# 답변 내용 구성
msg = element
# msg에 지정된 내용대로 메시지를 전송
await channel.send(msg)
return None
if __name__ == "__main__":
client = chatbot()
client.run("ODIxMzExOTY0OTUyMjY0NzY0.YFB4Xw.3QwR70Bl7WkdFmKRdHwWqxopVXE")
토,일,공휴일 일때 2 일때 리턴
top of page
실제 작동 상태를 확인하려면 라이브 사이트로 이동하세요.
수정: 2021년 4월 21일
210421 (완성본)
210421 (완성본)
댓글 0개
좋아요
댓글(0)
bottom of page