作为一名 Pixiv 爱好者,时刻关注画师的最新作品已成为生活中不可或缺的一部分。然而,手动检查新图不仅耗时耗力,还容易错过精彩内容。那么,有没有一种更便捷的方式来自动推送这些喜欢的图片呢?
本文将介绍如何利用 Telegram 和 RSS 技术实现 Pixiv 新图的自动订阅与推送,并结合 Node.JS 开发一个高效的处理工具,助您轻松掌握每一张新图的动态。
为什么选择 Telegram 订阅 Pixiv 新图?
手动检查 Pixiv 更新不仅效率低下,还可能错过重要内容。通过 Telegram 订阅 Pixiv 新图,您可以:
- 自动接收更新:无需手动检查,新图自动推送到您的 Telegram 频道。
- 高效管理:支持批量处理和预览图推送,避免大图加载问题。
- 灵活自定义:通过自建工具实现高度自定义,满足个性化需求。
实现方案:基于 RSS 和 Telegram Bot 的自动化推送
第一步:RSS 数据采集
RSS 是一种常用的资讯订阅方式,我们可以通过 RSSHub 获取 Pixiv 关注画师的新图数据。为了简化数据处理,使用 rss-parser
组件将 RSS 数据转化为对象,便于后续处理。
bash
npm i rss-parser –save
通过简单的参数调用,即可获取 RSS 数据:
javascript
const parser = new RSSParser();
const feed = await parser.parseURL(‘https://rsshub.app/pixiv/user/[画师ID]’);
第二步:数据提取与处理
RSSHub 生成的数据中包含图片链接和作品信息。我们可以使用正则表达式提取关键信息:
javascript
const picIdReg = /https:\/\/pixiv.cat\/(\d+)-?(\d+)?.(jpg|png|gif)/gi;
const artworks = […item.content.matchAll(picIdReg)];
针对单图和多图内容,进一步生成预览图地址和下载链接:
javascript
const previewUrl = ;
;
const downloadUrl =
第三步:消息发送与交互
通过 Telegram Bot API 的 sendPhoto
接口,将图片和相关信息推送到频道中,并添加内联键盘以便用户直接访问原图和下载图片:
javascript
got(‘sendPhoto’, {
method: ‘POST’,
prefixUrl: https://api.telegram.org/bot${botToken}
,
json: {
chat_id: chatId,
photo: previewUrl,
caption: ‘Pixiv 新图’,
reply_markup: {
inline_keyboard: [
[
{ text: ‘🌏 访问原图’, url: artworkUrl },
{ text: ‘⤵ 下载图片’, url: downloadUrl }
]
]
}
}
});
部署与运行
为了确保工具稳定运行,可以将代码部署到服务器上,使用 pm2
进行进程管理:
bash
pm2 start bot.js –name pixiv-bot
当一切准备就绪后,您的 Telegram 频道将自动接收 Pixiv 最新图片推送,助您轻松掌握画师动态。
通过以上方案,您可以实现高效、便捷的 Pixiv 新图订阅与推送,彻底告别手动检查的繁琐流程,让每一张新图都能在第一时间呈现在您的眼前!