Update readme.md

This commit is contained in:
sansan 2025-06-19 21:13:51 +08:00 committed by GitHub
parent 293c659673
commit 1f9d4122b8

231
readme.md
View File

@ -4,16 +4,20 @@
**多平台热点资讯监控分析系统** **多平台热点资讯监控分析系统**
> **🚀 一键部署,最快一分钟配置完毕!**
[![GitHub Stars](https://img.shields.io/github/stars/sansan0/TrendRadar?style=flat-square&logo=github&color=yellow)](https://github.com/sansan0/TrendRadar/stargazers) [![GitHub Stars](https://img.shields.io/github/stars/sansan0/TrendRadar?style=flat-square&logo=github&color=yellow)](https://github.com/sansan0/TrendRadar/stargazers)
[![GitHub Forks](https://img.shields.io/github/forks/sansan0/TrendRadar?style=flat-square&logo=github&color=blue)](https://github.com/sansan0/TrendRadar/network/members) [![GitHub Forks](https://img.shields.io/github/forks/sansan0/TrendRadar?style=flat-square&logo=github&color=blue)](https://github.com/sansan0/TrendRadar/network/members)
[![GitHub Issues](https://img.shields.io/github/issues/sansan0/TrendRadar?style=flat-square&logo=github&color=red)](https://github.com/sansan0/TrendRadar/issues)
[![License](https://img.shields.io/badge/license-GPL--3.0-blue.svg?style=flat-square)](LICENSE) [![License](https://img.shields.io/badge/license-GPL--3.0-blue.svg?style=flat-square)](LICENSE)
[![Python](https://img.shields.io/badge/python-3.7%2B-3776AB?style=flat-square&logo=python&logoColor=ffdd54)](https://www.python.org/) [![Python](https://img.shields.io/badge/python-3.7%2B-3776AB?style=flat-square&logo=python&logoColor=ffdd54)](https://www.python.org/)
[![Version](https://img.shields.io/badge/version-v1.1.0-green.svg?style=flat-square)](https://github.com/sansan0/TrendRadar) [![Version](https://img.shields.io/badge/version-v1.2.0-green.svg?style=flat-square)](https://github.com/sansan0/TrendRadar)
[![Platform](https://img.shields.io/badge/platform-Windows%20%7C%20macOS%20%7C%20Linux-lightgrey.svg?style=flat-square)](https://github.com/sansan0/TrendRadar)
[![企业微信通知](https://img.shields.io/badge/企业微信-通知支持-00D4AA?style=flat-square)](https://work.weixin.qq.com/)
[![Telegram通知](https://img.shields.io/badge/Telegram-通知支持-00D4AA?style=flat-square)](https://telegram.org/)
[![dingtalk通知](https://img.shields.io/badge/钉钉-通知支持-00D4AA?style=flat-square)](#)
[![飞书通知](https://img.shields.io/badge/飞书-通知支持-00D4AA?style=flat-square)](https://www.feishu.cn/) [![飞书通知](https://img.shields.io/badge/飞书-通知支持-00D4AA?style=flat-square)](https://www.feishu.cn/)
[![GitHub Actions](https://img.shields.io/badge/GitHub_Actions-自动化-2088FF?style=flat-square&logo=github-actions&logoColor=white)](https://github.com/sansan0/TrendRadar) [![GitHub Actions](https://img.shields.io/badge/GitHub_Actions-自动化-2088FF?style=flat-square&logo=github-actions&logoColor=white)](https://github.com/sansan0/TrendRadar)
[![GitHub Pages](https://img.shields.io/badge/GitHub_Pages-部署-4285F4?style=flat-square&logo=github&logoColor=white)](https://sansan0.github.io/TrendRadar)
</div> </div>
@ -29,28 +33,32 @@
- **智能内容筛选** - 支持自定义频率词,过滤词和必须词的配置,精准定位关注话题,有效过滤无关信息噪音 - **智能内容筛选** - 支持自定义频率词,过滤词和必须词的配置,精准定位关注话题,有效过滤无关信息噪音
- **多渠道实时推送** - 通过**飞书机器人** 推送重要资讯或者**GitHub Pages** 自带的设置页面,一键跳转新闻详情。如果 star 的人多的话,后续会加入**企业微信****钉钉****telegram**等推送渠道 - **多渠道实时推送** - 通过**飞书机器人** 推送重要资讯或者**GitHub Pages** 自带的设置页面,一键跳转新闻详情。目前支持**企业微信**10 秒配置完毕,设置速度最快,小白都会),**飞书**(消息显示最友好),**钉钉****telegram**推送渠道
- **开箱即用部署** - 一键 Fork 即可部署,简化部署流程和技术门槛 - **开箱即用部署** - 一键 Fork 即可部署,简化部署流程和技术门槛
> GitHub Pages 自带的设置页面对大多数人更方便, 配置一下,保存一个网页链接即可,放手机浏览器里也随时可看, 比如我这里[https://sansan0.github.io/TrendRadar/](https://sansan0.github.io/TrendRadar/) > GitHub Pages 自带的设置页面也方便, 配置一下,保存一个网页链接即可,比如我这里[TrendRadar 网页版](https://sansan0.github.io/TrendRadar/)
## 更新日志 ## 更新日志
> 飞书机器人创建完得点发布得点发布得点发布~除了 issues 里,还有几位跑公众号问的最后也排查出是这个问题,我以为我的步骤已经很详细了/(ㄒ o ㄒ)/~~如果你还遇到什么问题,往下翻到常见问题( •̀ ω •́ )✧ > **不定期更新**,已 **fork** 的同学只需要复制本项目 **main.py** 的所有代码到你的 github 直接覆盖即可(github 在线编辑)
### 2025/06/18 ### 2025/06/19 - v1.2.0
感谢 claude research 整理的各平台 api ,让我快速完成各平台适配(虽然代码更多冗余了~
1. 支持 telegram ,企业微信,钉钉推送渠道, 支持多渠道配置和同时推送
### 2025/06/18 - v1.1.0
**200 star⭐** 了, 继续给大伙儿助兴~近期,在我的"怂恿"下,挺多人在我公众号点赞分享推荐助力了我,我都在后台看见了具体账号的鼓励数据,很多都成了天使轮老粉(我玩公众号才一个多月,虽然注册是七八年前的事了哈哈,属于上车早,发车晚),但因为你们没有留言或私信我,所以我也无法一一回应并感谢支持,在此一并谢谢! **200 star⭐** 了, 继续给大伙儿助兴~近期,在我的"怂恿"下,挺多人在我公众号点赞分享推荐助力了我,我都在后台看见了具体账号的鼓励数据,很多都成了天使轮老粉(我玩公众号才一个多月,虽然注册是七八年前的事了哈哈,属于上车早,发车晚),但因为你们没有留言或私信我,所以我也无法一一回应并感谢支持,在此一并谢谢!
1. 1.1.0 版 1. 重要的更新,加了权重,你现在看到的新闻都是最热点最有关注度的出现在最上面
2. 重要的更新,加了权重,你现在看到的新闻都是最热点最有关注度的出现在最上面 2. 更新文档使用,因为近期更新了很多功能,而且之前的使用文档我偷懒写的简单(见下面的 ⚙️ 频率词配置完整教程)
3. 更新文档使用,因为近期更新了很多功能,而且之前的使用文档我偷懒写的简单(见下面的 ⚙️ 频率词配置完整教程)
### 2025/06/16 ### 2025/06/16 - v1.0.0
1. 正式版本 1.0.0 发布 1. 增加了一个项目新版本更新提示,默认打开,如要关掉,可以在 main.py 中把 "FEISHU_SHOW_VERSION_UPDATE": True 中的 True 改成 False 即可
2. 增加了一个项目新版本更新提示,默认打开,如要关掉,可以在 main.py 中把 "FEISHU_SHOW_VERSION_UPDATE": True 中的 True 改成 False 即可
### 2025/06/13+14 ### 2025/06/13+14
@ -66,24 +74,16 @@
**100 star⭐** 了,写个小功能给大伙儿助助兴 **100 star⭐** 了,写个小功能给大伙儿助助兴
frequency_words.txt 文件增加了一个【必须词】功能,使用 + 号 frequency_words.txt 文件增加了一个【必须词】功能,使用 + 号
1. 默认的频率词语法如下: 1. 必须词语法如下:
唐僧或者猪八戒在标题中出现一个就可以被记录到推送 唐僧或者猪八戒必须在标题里同时出现,才会收录到推送新闻中
```
唐僧
猪八戒
```
2. 必须词语法如下:
唐僧或者猪八戒必须在标题里同时出现
``` ```
+唐僧 +唐僧
+猪八戒 +猪八戒
``` ```
3. 过滤词的优先级更高: 2. 过滤词的优先级更高:
如果标题中匹配到唐僧念经,那么即使必须词里有唐僧,也不显示 如果标题中过滤词匹配到唐僧念经,那么即使必须词里有唐僧,也不显示
``` ```
+唐僧 +唐僧
@ -112,8 +112,6 @@ frequency_words.txt 文件增加了一个【必须词】功能,使用 + 号
</tr> </tr>
</table> </table>
**不定期更新**,已 **fork** 的同学只需要复制本项目 **main.py** 的所有代码到你的 github 直接覆盖即可(github 在线编辑)
## 🔍 支持的平台 ## 🔍 支持的平台
目前已支持以下 11 个热门平台: 目前已支持以下 11 个热门平台:
@ -136,13 +134,33 @@ frequency_words.txt 文件增加了一个【必须词】功能,使用 + 号
- 点击本页面右上角的"Fork"按钮 - 点击本页面右上角的"Fork"按钮
2. **设置 GitHub Secrets**: 2. **设置 GitHub Secrets(选择你需要的平台)**:
- 在你 Fork 后的仓库中,进入`Settings` > `Secrets and variables` > `Actions` 在你 Fork 后的仓库中,进入 `Settings` > `Secrets and variables` > `Actions`,然后根据需要配置以下任一或多个通知平台:
- 点击"New repository secret"
- 名称填写`FEISHU_WEBHOOK_URL` ### 🟡 企业微信机器人(配置最简单最迅速)
- 值填写你的飞书机器人 Webhook 地址(webhook 获取,请直接跳转到下方的 "🤖 飞书机器人设置")
- 点击"Add secret"保存 - 名称:`WEWORK_WEBHOOK_URL`
- 值:你的企业微信机器人 Webhook 地址
### 🟢 飞书机器人(消息显示最友好)
- 名称:`FEISHU_WEBHOOK_URL`
- 值:你的飞书机器人 Webhook 地址
### 🔵 钉钉机器人
- 名称:`DINGTALK_WEBHOOK_URL`
- 值:你的钉钉机器人 Webhook 地址
### 🟣 Telegram Bot (配置最复杂)
- 名称:`TELEGRAM_BOT_TOKEN`
- 值:你的 Telegram Bot Token
- 名称:`TELEGRAM_CHAT_ID`
- 值:你的 Telegram Chat ID
**注意:** 可以同时配置多个平台,系统会向所有配置的平台发送通知。具体设置方法请参考下方对应的机器人设置教程。
3. **自定义关键词**: 3. **自定义关键词**:
@ -157,7 +175,105 @@ frequency_words.txt 文件增加了一个【必须词】功能,使用 + 号
- 运行结果将自动保存在仓库的`output`目录中 - 运行结果将自动保存在仓库的`output`目录中
- 同时通过飞书机器人发送通知到你的群组 - 同时通过飞书机器人发送通知到你的群组
## ⚙️ 频率词配置完整教程(三种语法) ## 🤖 多平台机器人设置
### 🟡 企业微信机器人设置
#### 手机端设置:
1. 打开企业微信 App → 进入目标内部群聊
2. 点击右上角"…"按钮 → 选择"群机器人"
3. 点击"添加" → 点击"新建" → 设置机器人昵称
4. 点击"添加" → 复制 Webhook 地址
#### PC 端也是类似设置流程
**配置到 GitHub**:将获得的 Webhook URL 配置到 GitHub Secrets 中的 `WEWORK_WEBHOOK_URL`
### 🟢 飞书机器人设置
1. 电脑浏览器打开 https://botbuilder.feishu.cn/home/my-app
2. 点击"新建机器人应用"
3. 进入创建的应用后,点击"流程涉及" > "创建流程" > "选择触发器"
4. 往下滑动,点击"Webhook 触发"
5. 此时你会看到"Webhook 地址",把这个链接先复制到本地记事本暂存,继续接下来的操作
6. "参数"里面放上下面的内容,然后点击"完成"
```json
{
"message_type": "text",
"content": {
"total_titles": "{{内容}}",
"timestamp": "{{内容}}",
"report_type": "{{内容}}",
"text": "{{内容}}"
}
}
```
7. 点击"选择操作" > "发送飞书消息" ,勾选 "群消息", 然后点击下面的输入框,点击"我管理的群组"(如果没有群组,你可以在飞书 app 上创建群组)
8. 消息标题填写"TrendRadar 热点监控"
9. 最关键的部分来了,点击 + 按钮,选择"Webhook 触发",然后按照下面的图片摆放
![飞书机器人配置示例](_image/image.png)
10. 配置完成后,将第 5 步复制的 Webhook 地址配置到 GitHub Secrets 中的 `FEISHU_WEBHOOK_URL`
### 🔵 钉钉机器人设置
1. **创建机器人(仅 PC 端支持)**
- 打开钉钉 PC 客户端,进入目标群聊
- 点击群设置图标(⚙️)→ 往下翻找到"机器人"点开
- 选择"添加机器人" → "自定义"
2. **配置机器人**
- 设置机器人名称
- **安全设置**
- **自定义关键词**:设置 "热点"
3. **完成设置**
- 勾选服务条款协议 → 点击"完成"
- 复制获得的 Webhook URL
- 将 URL 配置到 GitHub Secrets 中的 `DINGTALK_WEBHOOK_URL`
**注意**:移动端只能接收消息,无法创建新机器人。
### 🟣 Telegram Bot 设置
1. **创建机器人**
- 在 Telegram 中搜索 `@BotFather`(大小写注意,有蓝色徽章勾勾,有类似 37849827 monthly users ,这个才是官方的,有一些仿官方的账号注意辨别)
- 发送 `/newbot` 命令创建新机器人
- 设置机器人名称(必须以"bot"结尾,很容易遇到重复名字,所以你要绞劲脑汁想不同的名字)
- 获取 Bot Token格式如`123456789:AAHfiqksKZ8WmR2zSjiQ7_v4TMAKdiHm9T0`
2. **获取 Chat ID**
**方法一:通过官方 API 获取**
- 先向你的机器人发送一条消息
- 访问:`https://api.telegram.org/bot<你的Bot Token>/getUpdates`
- 在返回的 JSON 中找到 `"chat":{"id":数字}` 中的数字
**方法二:使用第三方工具**
- 搜索 `@userinfobot` 并发送 `/start`
- 获取你的用户 ID 作为 Chat ID
3. **配置到 GitHub**
- `TELEGRAM_BOT_TOKEN`:填入第 1 步获得的 Bot Token
- `TELEGRAM_CHAT_ID`:填入第 2 步获得的 Chat ID
## ⚙️ frequency_words.txt 完整配置教程(三种语法)
在`frequency_words.txt`文件中配置监控的频率词,过滤词和必须词 在`frequency_words.txt`文件中配置监控的频率词,过滤词和必须词
@ -308,7 +424,7 @@ iPhone
1. **创建配置文件**:新建 `frequency_words.txt` 文件 1. **创建配置文件**:新建 `frequency_words.txt` 文件
2. **填写词组**:每个词组用空行分隔 2. **填写词组**:每个词组用空行分隔
3. **测试效果**运行程序查看 HTML 报告 3. **测试效果**手动运行 GitHub Actions 查看推送效果
4. **调整优化**:根据结果增减词汇或调整过滤 4. **调整优化**:根据结果增减词汇或调整过滤
## 📊 权重排序说明 ## 📊 权重排序说明
@ -323,7 +439,7 @@ iPhone
## 📊 输出示例 ## 📊 输出示例
### 飞书通知示例: ### 通知示例:
``` ```
📊 热点词汇统计 📊 热点词汇统计
@ -336,7 +452,7 @@ iPhone
``` ```
### 飞书消息格式说明 ### 消息格式说明
| 格式元素 | 示例 | 含义 | 说明 | | 格式元素 | 示例 | 含义 | 说明 |
| ------------- | --------------------------- | ------------ | --------------------------------------- | | ------------- | --------------------------- | ------------ | --------------------------------------- |
@ -349,45 +465,6 @@ iPhone
| [时间 ~ 时间] | [12 时 30 分 ~ 14 时 00 分] | 时间范围 | 标题出现的时间范围(首次~最后) | | [时间 ~ 时间] | [12 时 30 分 ~ 14 时 00 分] | 时间范围 | 标题出现的时间范围(首次~最后) |
| (N 次) | (4 次) | 出现次数 | 标题在监控期间出现的总次数 | | (N 次) | (4 次) | 出现次数 | 标题在监控期间出现的总次数 |
## 🤖 飞书机器人设置
1. 电脑浏览器打开 https://botbuilder.feishu.cn/home/my-app
2. 点击"新建机器人应用"
3. 进入创建的应用后,点击"流程涉及" > "创建流程" > "选择触发器"
4. 往下滑动,点击"Webhook 触发"
5. 此时你会看到"Webhook 地址",把这个链接先复制到本地记事本暂存,继续接下来的操作
6. "参数"里面放上下面的内容,然后点击"完成"
```json
{
"message_type": "text",
"content": {
"total_titles": "{{内容}}",
"timestamp": "{{内容}}",
"report_type": "{{内容}}",
"text": "{{内容}}"
}
}
```
7. 点击"选择操作" > "发送飞书消息" ,勾选 "群消息", 然后点击下面的输入框,点击"我管理的群组"(如果没有群组,你可以在飞书 app 上创建群组)
8. 消息标题填写"TrendRadar 热点监控"
9. 最关键的部分来了,点击 + 按钮,选择"Webhook 触发",然后按照下面的图片摆放
![飞书机器人配置示例](_image/image.png)
10. 到这里就配置完了,你可以等待手机接收消息(等几十分钟),也可以在 Actions 页面手动触发一次 workflow(等待几十秒就行,不懂的可以问 ai)
11. 另外output 目录下,有每天的 **当日统计.html**
比如https://github.com/sansan0/TrendRadar/tree/master/output/2025年05月05日/html ,你可以看到每天汇总的要点新闻,同时在根目录也会生成 `index.html` 方便直接访问
## 🔧 高级用法 ## 🔧 高级用法
### 自定义监控平台 ### 自定义监控平台
@ -452,7 +529,7 @@ ids = [
## 📄 许可证 ## 📄 许可证
MIT License GPL-3.0 License
--- ---