不用起服务器,不用跑定时脚本,不用定时爬网页,只需要 Amazon Lambda,和一个 webhook,就能每天早上收到最新的RSS推送啦~
这玩意看似简单,其实也很简单🤣
是的,我们今天要来干点小事儿(doge),做一个自动化 RSS 聚合推送!
起因
作为一名互联网民工,咱虽然职位不高,但关注的内容是一点都不少的:
- GitHub Trending
- 技术社区博主更新
- 少数派/36kr/虎嗅精选
- 某些小众技术博客
考虑到每天刷 RSS 太麻烦了,我寻思能不能搞个全自动的?
我想要的是:每天自动推送前一天的更新内容,然后发到企业微信中。
实现方案
我整活的技术栈:
- Amazon Lambda:免费使用,部署简单,不用维护
- Python :用
feedparser
解析 RSS,熟悉且轻巧 - 企业微信 Webhook:消息推送落地方式,简单稳定
- CloudWatch Events(EventBridge) :定时触发器,每天自动执行
你问我为什么用 Amazon Lambda?
- 每月有 100 万次调用免费额度,且永久免费,用不完,根本用不完
- 不用管部署,写完代码直接丢上去就完事了,非常适合这种简单的项目

那我们要怎么拿到这些免费额度呢?其实只要注册一个账号就可以了。
注册账号
先去 亚马逊云科技官网,点击右上角注册账号,关键流程如下:
- 手机号、账单信息可以直接用国内资料填写;
- 选择基础支持计划(无需额外开支);
- 注册完成后等待身份验证通过,即可开始使用资源。
接下来回归我们的主线任务,继续实现我们的 RSS 聚合推送神器。
新用户可获得高达 200 美元的服务抵扣金
亚马逊云科技新用户可以免费使用亚马逊云科技免费套餐(Amazon Free Tier)。注册即可获得 100 美元的服务抵扣金,在探索关键亚马逊云科技服务时可以再额外获得最多 100 美元的服务抵扣金。使用免费计划试用亚马逊云科技服务,最长可达 6 个月,无需支付任何费用,除非您选择付费计划。付费计划允许您扩展运营并获得超过 150 项亚马逊云科技服务的访问权限。
目录结构
bash
rss-pusher/
├── lambda_function.py # 主逻辑
├── requirements.txt # 依赖
代码实现
因为这个代码逻辑比较简单,所以咱就用Python来写了,方便又快捷~
python
import datetime
import requests
import feedparser
# 企业微信 Webhook 地址
WEBHOOK_URL = "https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=YOUR_KEY"
# RSS 源列表
RSS_FEEDS = [
"https://sspai.com/feed"
]
# 昨天的时间范围
today = datetime.datetime.utcnow() + datetime.timedelta(hours=8)
yesterday = today - datetime.timedelta(days=1)
def is_yesterday(published_parsed):
if not published_parsed:
return False
pub_date = datetime.datetime(*published_parsed[:6])
return yesterday.date() <= pub_date.date() < today.date()
def lambda_handler(event, context):
updates = []
for url in RSS_FEEDS:
d = feedparser.parse(url)
for entry in d.entries:
if is_yesterday(entry.get("published_parsed")):
updates.append(f"🔹 [{entry.title}]({entry.link})")
if not updates:
print("昨日无更新,继续摸鱼")
return
content = "\n".join(updates)
message = {
"msgtype": "markdown",
"markdown": {
"content": f"🎯 **昨日 RSS 更新(共 {len(updates)} 条)**\n\n{content}"
}
}
resp = requests.post(WEBHOOK_URL, json=message)
print("消息发送结果:", resp.status_code, resp.text)
# 方便本地调试
if __name__ == "__main__":
lambda_handler({}, {})
依赖列表(requirements.txt)
requests
feedparser
部署时可以打个 zip 包上传,或者用 Amazon Lambda 层(Layer)方式管理依赖。
本地调试:
sh
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
python3 test.py

创建 Lambda 函数
我们需要把项目代码进行上传:
- 进入 Lambda 服务控制台,点击 "创建函数" (Create function) 。
- 选择 "从头开始创作" (Author from scratch) 。
- 函数名称 (Function name): 填写
RSS-Aggregator-Function
,其实你随便填也没事。 - 运行时 (Runtime): 选择 Python 3.9 或更高版本。
- 架构 (Architecture): 保持默认的
x86_64
。 - 点击 "创建函数" 。
创建成功!
设置定时触发器
最后一步,我们需要让这个函数自动运行。
- 在 Lambda 函数页面,点击 "添加触发器" (Add trigger) 。
- 在下拉菜单中选择 EventBridge (or CloudWatch Events) 。
- 选择 "创建新规则" (Create a new rule) 。
- 规则名称 (Rule name): 填写
RSS-Hourly-Trigger
,其实你随便填也没事。 - 计划表达式 (Schedule expression): 选择 "速率" (rate) ,然后输入
1
和day
,表示每天执行一次。你也可以使用 Cron 表达式进行更精细的控制。 - 点击 "添加" (Add) 。
至此,整个系统已经搭建完成!
效果展示

尾声
方案优点:
- 不需要服务器、不用起定时任务
- 全自动、稳定、高扩展性(你可以自己改成 Telegram、钉钉、邮箱)
- 免费使用,无需维护
需要注意的是,有些RSS源不规范,最好先在本地进行调试下,没问题了再部署上去。
如果你也想过"每天自动看资讯",又懒得手动刷RSS的话,不如试试这个自动化组合拳。
技术活干得漂亮,推送内容也能顺便炫一波,岂不美哉?
友情提示:如果用完了之后不再需要使用服务的话,记得要在控制台关闭服务,以防超过免费额度产生扣费