-
카카오톡 인천대학교 학식봇 만들기(AWS Lambda) - 8App 2021. 7. 12. 21:05
import json from bs4 import BeautifulSoup import crawling_INUmenu as im def lambda_handler(event, context): menu_type_list = ["중식","중식","석식","라면","국밥"] request_body = json.loads(event["body"], encoding="utf-8") action = request_body["action"] # 날짜 출력 date_obj = json.loads(action["params"]["date"]) date = date_obj["date"] date = int(date[5:].replace('-','')) diff_index = im.today_index + date - im.short_date day = action["detailParams"]["date"]["origin"] # 요청한 메뉴 시간 request_typemenu = action["params"]["menu_type"] tm_index = 0 for i in range(len(menu_type_list)): print(i, menu_type_list[i], request_typemenu) if menu_type_list[i] == request_typemenu: tm_index = i break # 요청한 메뉴 출력 typemenu_show_str = "" typemenu_show_str += "{} {} 메뉴\n\n".format(day, request_typemenu) if tm_index == 0 or tm_index == 1: typemenu_show_str += "중식(백반)\n" for i in range(len(im.all_menu_list[diff_index][0])): if i == len(im.all_menu_list[diff_index][0])-1: typemenu_show_str += "{}".format(im.all_menu_list[diff_index][0][i]) else: typemenu_show_str += "{}\n".format(im.all_menu_list[diff_index][0][i]) typemenu_show_str += "\n중식(일품) \n" for i in range(len(im.all_menu_list[diff_index][1])): if i == len(im.all_menu_list[diff_index][1]): typemenu_show_str += "{}".format(im.all_menu_list[diff_index][1][i]) else: typemenu_show_str += "{}\n".format(im.all_menu_list[diff_index][1][i]) else: for i in range(len(im.all_menu_list[diff_index][tm_index])): if i == len(im.all_menu_list[diff_index][tm_index])-1: typemenu_show_str += "{}".format(im.all_menu_list[diff_index][tm_index][i]) else: typemenu_show_str += "{}\n".format(im.all_menu_list[diff_index][tm_index][i]) result = { "version": "2.0", "template":{ "outputs": [ { "simpleText":{ "text": "{}".format(typemenu_show_str) } } ] } } return { "statusCode":200, "body": json.dumps(result), "headers": { "Access-Control-Allow-Origin": "*", } }
typemenu_show라는 lambda 함수를 추가하여, 여러 발화에 대응 할 수 있게 업데이트 했다.
추가된 기능 이제 특정날짜, 특정시간의 메뉴를 알 수 있는 발화에 대응 할 수 있게 되었다.
ex) 내일 중식 알려줘
예상 발화들을 추가한 모습.
github에 readme도 추가해서 간략하게 어떤 기능을 지원하는지에대한 설명도 추가했다.
https://github.com/kjy0349/INU_Cafeteria
kjy0349/INU_Cafeteria
학식크롤러. Contribute to kjy0349/INU_Cafeteria development by creating an account on GitHub.
github.com
오늘은 daymenu_show 함수 추가와, github 정리에 시간을 쏟았다.
'App' 카테고리의 다른 글
카카오톡 학식봇 만들기(AWS Dynamo DB) - 9 (0) 2021.07.16 AWS Lambda 실시간 로그 사용하기(Cloud watch) (0) 2021.07.15 카카오톡 인천대학교 학식봇 만들기(AWS Lambda, layer) - 7 (0) 2021.07.09 카카오톡 인천대학교 학식봇 만들기(AWS Lambda) - 6 (0) 2021.07.06 카카오톡 인천대학교 학식봇 만들기(AWS Lambda) - 5 (0) 2021.07.05