作为一个老二次元,我经常看番,但随着自己看过的番剧数量增多,在与其他二次元同好交流喜欢的番剧时,往往都是听到一个番,啊这个我看过,那个我也看过,到了让你自己说出几个喜欢的番剧时,一个字都蹦不出来。如果俩人都是社恐,那场面就更尴尬了。
为了解决这个尴尬,我在博客里创建了一个追番列表,你可以访问这个网址来了解我都看过哪些番剧,这样交流起来是不是就容易多了呢?现在我每次遇到二次元同好,啥也不说,把这个网址发给人家,他就会指着这里面的番剧说:啊这个我看过,那个我也看过。对吧,有效地解决了社恐二次元的烦恼。
预览
工具
使用方法 安装 在 Hexo 文件夹下执行:
1 npm install hexo-bangumis --save
配置 将下面的配置写入 站点 的配置文件 _config.yml
中:
1 2 3 4 5 6 7 8 9 10 11 12 13 bangumis: enable: true path: bangumis/index.html show: 1 title: '追番列表' quote: '生命不息,追番不止' color_meta: "#555" color_summary: "#555" bgmtv_uid: mmdjiji download_image: true image_level: c lazyload: true margin: 20px
使用 更新追番数据:
删除追番数据:
登录 bgm.tv 后打开控制台(快捷键 Ctrl
+ Shift
+ J
),输入 CHOBITS_UID
后按回车,得到的数字就是 uid
啦~
CI/CD 为了配合自动化运维,我特意编写了一份 GitHub Actions 脚本。你也不想每次在番组计划上添加完番剧还要手动在博客的仓库里更新番剧然后再构建一遍再推到服务器上吧,这种重复操作我们直接用脚本解决。
在 .github/workflows
目录里创建一个名为 auto-update.yml
的文件,内容如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 name: Auto update on: workflow_dispatch: schedule: - cron: '0 0 * * *' jobs: meta: name: Update meta runs-on: ubuntu-latest timeout-minutes: 10 steps: - name: Checkout uses: actions/checkout@v3 with: ref: main - name: Do meta update shell: bash run: | npm install npx hexo bangumis -u || echo - name: Commit files run: | git config --local user.email "41898282+github-actions[bot]@users.noreply.github.com" git config --local user.name "github-actions[bot]" git add . git commit -m "Update meta on $(date '+%Y-%m-%d %H:%M:%S')" || echo - name: Push changes uses: ad-m/github-push-action@master with: github_token: ${{ secrets.GITHUB_TOKEN }} branch: ${{ github.ref }} - name: Do build shell: bash run: | npm run build - name: Deploy 🚀 uses: JamesIves/github-pages-deploy-action@releases/v3 with: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} BRANCH: gh-pages FOLDER: public
牛逼之处
使用 bgm.tv 的官方 API 来进行爬取,番剧更多,可用性更高
支持数据缓存及番剧封面图本地化,防止因上游服务挂掉导致连锁效应,爬取好番剧后可纯离线场景下部署
极端条件下可通过编辑文件来自定义番剧列表,可自定义添加 bgm.tv 没有的番剧
总的来说,只要你爬取过这个番剧,那么就算将来 bgm.tv 上把这个番剧删掉了,你也可以继续使用这个番剧