사이드 프로젝트/텔레그램으로 전자책 읽기 📙

텔레그램으로 전자책 읽어주는 봇

직장인 조모씨 2024. 10. 22. 11:48
728x90
반응형

2024.10.22 - [사이드 프로젝트/텔레그램으로 전자책 읽기 📙] - 카카오톡 API vs 텔레그램 Bot 선택 과정

 

카카오톡 API vs 텔레그램 Bot 선택 과정

책 읽기 불편해평소에 이북 리더기 킨들로 책을 읽는다.언제인가 리더기 조차 가방에서 꺼내기 귀찮을 때가 있었다.핸드폰은 손에서 안 때고 잘 보는데이북 리더기도 그럴 수는 없을까?  핸드

minicode.tistory.com

2024.10.22 - [사이드 프로젝트/텔레그램으로 전자책 읽기 📙] - 텔레그램 봇 생성과 토큰 얻는 방법 + 챗 아이디 얻기

 

텔레그램 봇 생성과 토큰 얻는 방법 + 챗 아이디 얻기

텔레그램 봇 생성 & 토큰 얻기 1. BotFather 검색 후 대화 시작 ( 텔레그램 봇은 모두 BotFather를 거친다)2. /newbot3. 봇 이름 입력4. 봇 아이디 입력5. 장문의 답장 속 토큰 확인하기  챗 아이디 얻기 1.

minicode.tistory.com

2024.10.22 - [사이드 프로젝트/텔레그램으로 전자책 읽기 📙] - python으로 epub 목차 가져오기

 

python으로 epub 목차 가져오기

python으로 epub 목차 가져오기 처음에는 toc.ncx 을 읽어 하나 하나 파싱하려고 했는데좋은 라이브러리가 있었다.book 객체에 epub 정보 담아두고book.toc 불러오면 바로 읽히더라 굿import ebooklibfrom ebo

minicode.tistory.com


위와 같은 과정들을 거치고 봇이 완성되었다.

 

EbookLib, python-telegram-bot 라이브러리에게 무수한 감사를 :)

 

봇 소개

/help 명령어를 통해 도움말을 확인할 수 있다.

 

 

먼저 epub 파일을 전송해주자

전송이 완료되고 조금 기다려주면 파일 분석이 완료된다. 

참고로 20mb 넘는 파일은 라이브러리 특성 상 처리하지 못한다. (해결 방법이 있는지는 알아보지 않음)

 

/book 명령어를 통해 현재 책 정보를 알 수 있다.

 

/index 명령을 통해 목차를 확인할 수 있다.

 

원해는 목차 번호를 입력해 이동할 수 있다. 

1번 목차로 가보겠다.

 

온점 (.) 을 입력하면 책장을 넘기듯 자연스럽게 이어서 읽을 수 있다.

 

일부로 240자 가량으로 끊어 보내지게 했다.

핸드폰 화면에서 불편함 없이 한 메시지에 표시하기에 적절한 크기를 찾아 조정했다.

 

마치며

이 봇이 실행되고 있는 한, PC, 모바일환경 상관 없이 가볍게 채팅하듯 책을 읽을 수 있게 되었다. 

물론 epub 파일을 개인이 소유하고 있어야 한다는 단점이 있지만...!

원하는 목적을 달성해서 기분이 좋다 :)

 

 

 

728x90
반응형