# 背景
本来就想收藏点好看的图片,想找个好用的下载图片的工具。
发散着就在 github 上发现了 nazurin
看起来挺有趣的就试着搭建一下。
这里只记录大致流程和一些坑
# nazurin 简介
- Telegram bot 作为前端调用后端服务
- Heroku 作为 python 后端的服务器
- MEGA 作为图片数据库
- Firebase 作为存储 pixiv token 的数据库(方便 token 更新)
# 申请 Heroku 作为服务器
Heroku 需要挂个梯子,填写几个基本信息,通过邮箱就能快速注册一个账户
可以把 nazurin fork 到自己的 github 上,关联到 heroku 上的 git
也可以通过 Heroku CLI 在本地环境安装 (windows 可以用对应的安装包,其他系统也有对应的安装方式)
通过以下命令,输入注册 Heroku 的邮箱和密码登录 cli 工具
heroku login -i |
然后 git clone nazurin 项目,创建一个空的远程仓库,推送到 Heroku 的 git 上
cd ~/myapp | |
heroku create # 创建新应用 然后就可以像 git 修改提交 | |
git push heroku master #提交到 heroku 回自动重启 heroku | |
heroku logs --tail # 查看日志 |
# env 自定义配置
发布到 Heroku 后可以在应用中查看,tab 分页选择 settings 项下的 Config Vars
- TOKEN Telegram Bot 的 API token,可通过 @BotFather 获取
- ENV production 生产模式 使用 webhook 模式
- WEBHOOK_URL Heroku 部署填写 https://demo-123.herokuapp.com/ demo-123 为 app 名
- ADMIN_ID Telegram 的管理员 id 通过 [@GetIds Bot] 获得自己的 id
- ALBUM_ID 创建一个群聊,获取群聊的 id 用于存放原图文件的 Telegram Channel ID
- GALLERY_ID 创建一个群聊,获取群聊的 id 用于存放转发消息的 Telegram Channel ID
- DATABASE Firebase 存放 pixiv token 的数据库
- GOOGLE_APPLICATION_CREDENTIALS Firebase SDK 的登录凭据,详见 Firebase 文档
- STORAGE Mega 存储方式
- STORAGE_DIR 存储目录
- MEGA_USER mega 的用户名
- MEGA_PASS mega 的密码
- PIXIV_TOKEN 通过 Retrieving Auth Token (with Selenium)
注意: Retrieving Auth Token (with Selenium) 踩坑,架了梯子,才能访问 pixiv 但是,脚本中请求获取 token 时又报错
v2rayN 软件底部显示 http 127.0.0.1:10809 把这个填写到脚本的代理中,可以正常接收到 token
或者使用脚本的一部分,获取 pixiv 的一些基本参数,再通过 postman urlencode 传递参数 请求接口 获得 token
# Firebase 解决 pixiv token 刷新
Firebase 用于存储 pixiv Access Token 和 Refresh Token 和 updated_time
用自己的谷歌账户就能登录
在 firestore database 创建 nazurin => pixiv => Access Token 和 Refresh Token 和 updated_time
# Mega 云存储
Mega 有免费的空间,注册方便,可以作为图片收藏的云存储
# Usage
Commands:
/ping
- pong/pixiv <id>
- view pixiv artwork/pixiv_download <id>
- download pixiv artwork/danbooru <id>
- view danbooru post/danbooru_download <id>
- download danbooru post/yandere <id>
- view yandere post/yandere_download <id>
- download yandere post/konachan <id>
- view konachan post/konachan_download <id>
- download konachan post/zerochan <id>
- view zerochan post/zerochan_download <id>
- download zerochan post/bookmark <id>
- bookmark pixiv artwork/clear_cache
- clear download cache/help
- get help text
# Collection Update
向 Bot 发送或转发一条带有 支持的网站 链接的消息(一条消息暂时只能处理一条链接),此后这条消息将会被转发至 GALLERY Channel,随后 Bot 将从图片来源站点下载最清晰的原图文件并发送至 ALBUM Channel,最后文件会被上传至 MEGA 云盘作为备份。
Tips: 在手机上操作时可使用 “分享” 按钮,最后生成的分享信息带有链接即可。
- artstation
https://www.artstation.com/artwork/2x3LaB
https://catzz.artstation.com/projects/A9ELeq
- bilibili
https://t.bilibili.com/123456789012345678
https://t.bilibili.com/h5/dynamic/detail/123456789012345678
- danbooru
https://danbooru.donmai.us/posts/123456
https://safebooru.donmai.us/posts/123456
https://cdn.donmai.us/original/12/ab/12ab34cd56ef7890ab12cd34ef567890.png
https://danbooru.donmai.us/data/sample/sample-12ab34cd56ef7890ab12cd34ef567890.jpg
https://safebooru.donmai.us/data/___original__drawn_by__12ab34cd56ef7890ab12cd34ef567890.png
https://gelbooru.com/index.php?page=post&s=view&id=123456
https://yande.re/post/show/123456
https://files.yande.re/image/1234567890abcdef1234567890abcdef/yande.re 123456 aaa-bbb ccc_ddd ddd eee.jpg
https://konachan.com/post/show/123456
https://konachan.com/image/1234567890abcdef1234567890abcdef/Konachan.com - 123456 aaa-bbb ccc_ddd ddd eee.jpg
https://lolibooru.moe/post/show/123456
https://lolibooru.moe/image/1234567890abcdef1234567890abcdef/lolibooru 123456 aaa-bbb ccc_ddd ddd eee.jpg
- pixiv
https://pixiv.net/i/123456
https://pixiv.net/artworks/123456
https://www.pixiv.net/en/artworks/123456
https://www.pixiv.net/member_illust.php?mode=medium&illust_id=123456
https://i.pximg.net/img-original/img/2020/02/02/20/00/02/123456_p0.png
https://i1.pixiv.net/img-original/img/2020/02/02/20/00/02/123456_p0.png
https://i-f.pximg.net/img-original/img/2020/02/02/20/00/02/123456_p0.png
https://i.pximg.net/img-master/img/2020/02/02/20/00/02/123456_p0_master1200.jpg
https://i1.pixiv.net/img-original/img/2020/02/02/20/00/02/123456_ugoira1920x1080.zip
https://i.pximg.net/c/540x540_10_webp/img-master/img/2020/02/02/20/00/02/123456_p0_square1200.jpg
http://img1.pixiv.net/img/abcdef/123456.jpg
http://img1.pixiv.net/img/abcdef/123456_s.jpg
http://i1.pixiv.net/img01/img/abcdef/123456.jpg
http://i1.pixiv.net/img01/img/abcdef/123456_p0.jpg
https://twitter.com/i/web/status/1234567890123456789
https://twitter.com/abcdefg/status/1234567890123456789
https://www.twitter.com/abcdefg/status/1234567890123456789
https://mobile.twitter.com/abcdefg/status/1234567890123456789
https://weibo.com/1804342520/KEli42z4q
https://m.weibo.cn/detail/KEli42z4q
https://m.weibo.cn/detail/4696149640611470
https://m.weibo.cn/status/4696149640611470
https://weibo.cn/appurl?scheme=sinaweibo%3A%2F%2Fdetail%3Fmblogid%3D4696149640611470%26luicode%3D20000061%26lfid%3D4696149640611470&luicode=20000061&lfid=4696149640611470
sinaweibo://detail?mblogid=4696149640611470&luicode=20000061&lfid=4696149640611470
- zerochan
https://www.zerochan.net/123456
https://s1.zerochan.net/Abcdef.600.123456.jpg
https://static.zerochan.net/Abcdef.full.123456.jpg