我关注了上百个公众号,但是很难做到每天将所有新的推文浏览一遍。
结果,我发现自己时不时会漏掉比较重要的信息(比如活动报名、申报通知),这让我体会到了FOMO(Fear of Missing Out)的感觉,也就是怕错过重要信息。
于是,我想能不能让AI自动浏览每天我关注的公众号,并筛选其中的重要信息,然后总结给我呢?
这就是这个项目的功能,它能:
- 代替你操纵鼠标键盘,自动打开并浏览微信订阅号。
- 用大模型筛选符合要求的推文标题。
- 将结果总结在电子表格中。如下。
- 用python的uiautomation,操纵键鼠并爬取windows窗口UI。
- 调用大模型(如deepseek)对爬取的推文标题等信息进行处理和筛选。
- 用python的openpyxl制作电子表格。
首先,登录电脑微信,并确保订阅号里没有未读消息。
参考下文的“程序配置”,填好相关配置信息(一定要填入自己的大模型API_KEY!)。打开该程序的exe文件,在输入框里输入想要浏览的公众号数目(如果不填,直接确认,则默认会浏览所有关注的公众号)。之后的操作都将是程序自动执行,在程序运行过程中,不要人为移动鼠标和键盘!如果想打断程序,可以在任何时间按键盘上的Esc键,程序会自动退出。
- 稍等片刻,程序会自动打开微信主窗口,并找到订阅号并以独立窗口将其打开。
- 然后,程序会等待订阅号窗口加载完毕,并会自动滚动左侧的订阅号栏,然后回到顶部,一个一个地向下浏览订阅号。在这个过程中,程序会将窗口中间的订阅号的UI信息爬取下来。
- 当所有订阅号浏览结束后,稍等片刻,程序会自动调用大模型来对爬取的信息进行处理。
- 最终,程序会弹窗提示运行结束,并自动打开excel展示结果。生成的电子表格和爬取的原始信息都在“数据”文件夹中。
如果安装有杀毒软件,可能会阻止程序运行,请选择允许。
支持的环境:win10、win11。不支持mac系统。电脑需要安装微信。
在release中下载程序,解压到本地,然后按需修改config中的配置信息(至少应该填入自己的api_key)。
-
大模型配置
- 程序默认调用 ZetaTechs API 的大模型API,使用的是免费模型deepseek-chat-free,不用担心资费问题。
- 请在API_KEY.txt文件中填入自己在API站申请的API密钥。
- 如果想换用其它的模型,或使用其它家的API,请在大模型配置.txt文件中修改api_base和model。
-
提示词配置
-
在提示词.txt中可以自定义部分提示词。这部分提示词用于对每一个订阅号的推文标题数据进行筛选。您可以更换成自己想要的筛选规则。当前的提示词是:
提取其中活动报名通知、征集通知、开幕通知、事件预告等相关推文。 排除公众号“上岸了么”。 排除一周以前的推文。 【处理原则】 - 宁可多选不要漏选 - 模糊内容默认保留
-
接着,就可以打开exe程序运行。按键盘Esc键,随时打断程序。
python版本:3.8.18。其它版本未经测试。
运行脚本在 run.sh 中:
pip install -r requirements.txt
python main.py如果想将程序打包,可以参考 build.sh:
# 新建虚拟环境,安装依赖
python -m venv myenv
myenv\Scripts\activate
pip install -r requirements.txt
# 打包并复制配置文件
myenv\Scripts\pyinstaller news_reader.spec
cp -r .\config .\dist\config打包好的程序在dist目录下。
