在寻找廉价 VPS 和主机优惠时,LowEndTalk 是一个备受推崇的社区平台。为了避免手动浏览错过重要优惠,我开发了一个 Python 爬虫工具,结合 Telegram 机器人实现实时通知。本文将详细介绍这个自动化监控系统的功能、工作原理、安装步骤及自定义方法,每天像看通知一样便可获取每日最新优惠!本文所用到的全部代码:GitHub仓库。
一、项目背景
LowEndTalk 汇集了全球主机服务商的优惠信息,从 VPS 到专用服务器,种类繁多。然而,手动检查新帖子耗时费力。本文工具借助 Python 的爬虫库(如 CloudScraper)和 Telegram 机器人,能每半小时自动抓取新优惠并推送至TG聊天窗口。
二、功能与工作原理
该项目由三个核心组件协同工作,实现自动化监控和通知:
- 1_LowEndTalk.sh
- LowEndTalk.py
- 作用:核心爬虫脚本,负责数据抓取和处理。
- 功能:
- 使用 CloudScraper 绕过cloudflare反爬限制,抓取 LowEndTalk “Offers” 分类前两页。
- 提取标题、URL、浏览量、评论数和发布时间(基于 UTC 时间)。
- 过滤当天新帖子,与存储的 JSON 数据对比避免重复。
- 通过 python-telegram-bot 库异步发送优惠信息至 Telegram。
- 保存数据至
/opt/LowEndTalk/vps_info/vps_info_total.json。 - 日志记录至
/opt/LowEndTalk/log/LowEndTalk.log。
- 2_cron_lowendtalk.sh
- 作用:定时任务脚本,配合 cron 运行爬虫。
- 功能:
- 激活虚拟环境,执行 Python 脚本。
- 输出和错误日志重定向至
/opt/LowEndTalk/log/cron_app.log。
- 频率:默认每 30 分钟(
0,30 * * * *)。
三、安装步骤
以下是详细部署指南,在 Linux 服务器上运行此工具。
前置条件
- 服务器:运行 Linux 系统(如 Ubuntu、Debian、CentOS 等)。
- 权限:需要 root 权限安装依赖和配置 cron。
- Telegram:通过 BotFather 创建机器人,获取 token 和 chat ID。
- 网络:确保能访问 LowEndTalk 和 Telegram API。
详细步骤
- 复制文件
- 创建目录:
mkdir -p /opt/LowEndTalk/。 - 将所有文件复制至
/opt/LowEndTalk/。 - 注意:若自定义目录(如
/home/user/LowEndTalk/),务必更新所有脚本中的/opt/LowEndTalk/路径,文件名勿改。
- 创建目录:
- 配置 Telegram 机器人
- 进入
/opt/LowEndTalk/env/。 - 编辑
LowEndTalk.env文件:telegram_bot_token_lowtalkend=YOUR_BOT_TOKEN telegram_chat_id_lowtalkend=YOUR_CHAT_ID - 必填:确保 token 和 chat ID 正确,参考 Telegram 文档,你也可以参考我的另一篇文章。
- 进入
- 添加可执行权限
- 运行:
chmod +x 1_LowEndTalk.sh
- 运行:
- 运行安装脚本
- 执行:
bash 1_LowEndTalk.sh - 功能:
- 检查 root 权限和操作系统。
- 安装 Python 3 和 python3-venv。
- 创建虚拟环境
LowEndTalk_env。 - 安装
requirements.txt中的依赖(如 CloudScraper、BeautifulSoup)。 - 配置 cron 任务,日志存至
/opt/LowEndTalk/log/。
- 替代:可手动安装 Python 和依赖。
- 执行:
- 测试爬虫
- 运行:
bash 2_cron_lowendtalk.sh - 效果:抓取当天新优惠,发送至 Telegram,日志存至
/opt/LowEndTalk/log/LowEndTalk.log。
- 运行:
- 自定义 cron 定时任务(可选)
- 默认每 30 分钟运行(
0,30 * * * *)。 - 修改
1_LowEndTalk.sh中的CRON_SCHEDULE,例如每小时:CRON_SCHEDULE="0 * * * *" - 重新运行
bash 1_LowEndTalk.sh更新。 - 参考 Crontab Guru 自定义时间。
- 默认每 30 分钟运行(
注意事项
- 路径:自定义目录需更新所有绝对路径。
- 依赖:确保
requirements.txt包含必要库。 - 日志:检查
/opt/LowEndTalk/log/中的日志文件排错。 - 网络:服务器需连接 LowEndTalk 和 Telegram API。
- 时间:使用 UTC 时间,与 LowEndTalk 一致。
总结
这个 LowEndTalk 优惠监控爬虫结合 Telegram 机器人,无需手动再浏览即可实时获取 VPS 和主机优惠。通过 Python、CloudScraper 和 Telegram 的强大功能,自动化让讯息传递变得简单高效。具体代码下载访问我的GitHub仓库。
更新计划
- 2025年5月31日,正式发布,未来可能更新邮件转发功能
还有问题?请在评论区留言,我会尽快回复!
想接收我的项目更新通知?可以去GitHub关注我或者订阅我的博客。
