转发机器人思路
定时发饼
思路
继承之前方舟饼搬运思路,使用github
的workflow
实现免费的定时执行python
程序;程序功能如下:
- 通过api获取官方动态,原始形式为json
- 进行筛选:
- 不需要已经搬运过的动态
- 不需要动态抽奖动态
- 论坛帖子发布:
- 设置action为new
- 设置对应fid(上线游戏讨论区)、stid(交错战线板块)。
- 更新 “ 已发布 ” 动态列表
在github的action部署
注意requests库并不是python自带的、urllib和json是自带的;如果在requirements中写上了已经自带的库,那么会出现错误
注意隐私(Cookie)的保护
注意定时执行是按照UTC(国际标准时间)来的,换算成北京时间需要增加8小时
改进
在此之前,“ 已发布 ” 动态列表是直接存储原始json文件。如果改为 “ 最后动态时间 ”,则可以大幅减少所需操作量。但是,仍然需要对仓库具有访问、修改的权限。
api获取的时间为时间戳,即形如1422979200000形式的int数据,可以较为方便的存储、对比。
当然,也可以使用目前时间戳和获取到的时间戳进行对比,判断是否是“上一次获取”之后的新动态。这样可以规避push操作。
api中获取的时间戳为pub_ts,精确到秒。在modules底下的module_author底下的avatar底下。
难点
“ 已发布 ” 动态列表的更新:
- 是使用了github action,而不是在本地或服务器上运行,因此要想更改文件(存有json或者时间戳),需要有访问并更改本仓库内容的权限。
转发机器人思路
http://petertan303.github.io/2024/01/17/交错战线相关/