Git Product home page Git Product logo

acgn-bot's Introduction

Telegram bot: Check anime/comic/game/novel websites update

docker build workflow pylint workflow unittest workflow CodeQL workflow

Introduction

This bot scans anime/comic/game/novel websites, and send telegram message to specific channel/group/chat upon new chapters releases.

Screenshots

alt text alt text

Supported websites

Name Example Url Media Type
syosetu https://ncode.syosetu.com/n6621fl novel
piaotian https://www.piaotia.com/html/14/14565/ novel
69shu https://www.69shu.com/2108/ novel
biqu http://m.biqu520.net/wapbook-147321/ novel
manhuagui https://m.manhuagui.com/comic/30903/ comic
qimanhu http://m.qmanwu2.com/12235/ comic
baozimh https://www.baozimh.com/comic/fangkainagenuwu-yuewenmanhua_e comic
xbiquge https://www.xbiquge.so/book/53099/ comic
dashuhuwai https://www.dashuhuwai.com/comic/fangkainagenvwu/ comic
mn4u https://mn4u.net/zgm-2149/ comic
klmanga https://mangakl.su/one-piece-raw-1058 comic
laimanhua https://www.laimanhua8.com/kanmanhua/quanzhiduzheshijiao/ comic
weixin https://mp.weixin.qq.com/mp/appmsgalbum?action=getalbum&album_id=2989381295912878080&__biz=MzI5MjMwNjQxMw==#wechat_redirect others

Default Settings

Setting Default value
Checking Interval 30~60 min
Retry Interval 5 min
Maximum Retry Number 5

Supported Telegram Commands

Command Description
/list_config List all valid config websites
/list_latest List latest chapters
/list_last_check List last check time

Environment Variables

Name Default value Description
TOKEN Telegram Bot Token
CHAT_ID Telegram Chat ID
CONFIG_YML_URL Config file url (Optional)
CONFIG_YML_FILEPATH config/list.yaml Config file path (Optional, only used when CONFIG_YML_URL is not set)

How to use

Setup

Choose either option below to run the application

Option 1: Python

  1. Create .env

    TOKEN=<your token>
    CHAT_ID=<your chat_id>
  2. Start the application with the following command:

    pip install -r requirements.txt
    python main.py

Option 2: Docker Compose

  1. Create .env

    TOKEN=<your token>
    CHAT_ID=<your chat_id>
  2. Start the container with the following command:

    docker-compose up -d

Option 3: Kubernetes

  1. Set your bot token and chat_id in secret/acgn-bot

    # Examples in k8s/secrets/k8s-secrets.yaml, remember to change to your token/chat_id first
    kubectl apply -f k8s/secrets/k8s-secrets.yaml
  2. Set your checking list yaml file in configmap/acgn-bot.list.yaml

    kubectl create configmap acgn-bot.list.yaml --from-file=config/list.yaml --dry-run=client -o yaml | kubectl apply -f -
  3. Build local image and create deployment

    docker build . -t nonjosh/acgn-bot
    kubectl apply -k k8s/base

Edit your list

Edit your list in the file list.yaml. Restart container to apply changes.

Features to add

  • hack cocomanhua cloudflare DDOS protection
  • Support other IM bot other than Telegram (e.g. Signal, Discord)
  • Add back time range for checking

acgn-bot's People

Contributors

dependabot[bot] avatar nonjosh avatar snyk-bot avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

twithat

acgn-bot's Issues

BUGFIX telegram updater log

[2022-09-20T13:46:30+0800] {/app/helpers/tg.py:142} WARNING - Update "None" caused error "urllib3 HTTPError HTTPSConnectionPool(host='api.telegram.org', port=443): Max retries exceeded with url: /bot5138672560:AAEdNnCQN-41y2C5clmB8-u-d608VbPDayM/getUpdates (Caused by NewConnectionError('<telegram.vendor.ptb_urllib3.urllib3.connection.VerifiedHTTPSConnection object at 0x7f6fbc5b73d0>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution'))"                                                                                                                                                            

Error while getting Updates: urllib3 HTTPError HTTPSConnectionPool(host='api.telegram.org', port=443): Max retries exceeded with url: /bot5138672560:AAEdNnCQN-41y2C5clmB8-u-d608VbPDayM/getUpdates (Caused by NewConnectionError('<telegram.vendor.ptb_urllib3.urllib3.connection.VerifiedHTTPSConnection object at 0x7f6fb73bcbe0>: Failed to establish a new connection: [Errno -5] No address associated with hostname'))

should be resulted from network problem

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.