从什么值得买的好价排行榜中收集优惠信息,并推送至邮箱或微信
推送内容包含商品图片、标题、价格、点值的数量、评论数量等信息, 点击商品标题的超链接即可跳转至什么值得买查看正文
项目运行过程中会在根目录下自动创建database.db
数据库文件,数据库中会记录已推送的优惠信息,避免重复推送
技术框架: Java11 + Maven + SqlLite + Hibernate
支持GitHub Actions定时运行,无需搭建服务器
有改进的建议可以提issue给我. 麻烦给个star支持一下:heart:
- fork本仓库
- 新增Actions secrets. 选择邮箱推送需要填写
EMAILACCOUNT
和EMAILPASSWORD
.选择微信推送需要填写SPT
secret | 说明 | |
---|---|---|
EMAILACCOUNT | 选填 | 接收优惠信息的邮箱 |
EMAILPASSWORD | 选填 | 邮箱的授权码,参考qq邮箱的这篇文档 |
SPT | 选填 | WxPusher极简推送使用的身份ID,参考WxPusher文档 |
GIT_TOKEN | 必填 | 参考这篇文章的1-6步骤,只勾选repo的权限,Expiration设置为No Expiration |
- 打开fork项目的workFlow开关
- 修改
./.github/workflows/zdm_crawler.yml
文件中红框所示的内容
- 手动触发一次,测试下能不能跑通
- 我自己也fork了一份,每天都在自动运行的,可以通过这个项目的actions运行记录判断这个项目是否还能work
将GitHub Actions章节中的环境变量配置到本地即可
在./.github/workflows/zdm_crawler.yml
文件中可以配置minVoted
和minComments
, 小于该数量的优惠信息将不进行推送
white_words.txt
文件中可以自定义白名单关键词;black_words.txt
文件中可以自定义黑名单关键词;. 多个关键词之间需要换行
- 若白名单不为空, 仅会推送优惠信息的标题包含白名单中任意一个关键词的商品信息
- 若黑名单不为空, 仅会推送优惠信息的标题不包含黑名单中任意一个关键词的商品信息
- 在同时配置了黑白名单两个文件时, 只有白名单会生效. 在两个文件内容都为空时, 代表关闭过滤规则
日期 | 说明 |
---|---|
2025/01/02 | 用SqlLite改写已推送优惠信息的记录方式,升级JDK版本到11 |
2024/11/22 | 1.新增WxPusher推送方式; 2.为了适应移动端小屏幕展示效果,将跳转至什么值得买的超链接从详情列改为商品标题列,并移除了详情列,让表格的其余列有更充足的宽度 |
2024/10/23 | 支持白名单匹配模式以允许用户设置感兴趣的关键词进行推送 |
2024/10/22 | 邮箱登陆切换到 stmp ssl 465 端口模式以解决 QQ 邮箱不再支持 stmp 明文模式问题 |
2023/5/4 | 已推送优惠信息按日期在logs文件夹下归类记录.避免单个文件记录数据量过大的问题 |
2023/1/31 | 实现定时按什么值得买的好价排行榜,收集优惠信息并推送至邮箱的功能 |