Python 脚本配合 GitHub Actions 实现定时把 Steam 账号愿望单上的发售日做成公开的 ICS 文件,然后就可以被各个日历 App 通过 URL 订阅了(也可以一次性地导入)。据我所知 Google Calendar ,Apple Calendar ,Outlook ,滴答清单等都支持 URL 订阅,只是同步速度有快有慢。
这是 Google Calendar 的效果图,每个事件内会有游戏的商店链接:
GitHub: https://github.com/icue/SteamWishlistCalendar
使用说明(不在此赘述): https://github.com/icue/SteamWishlistCalendar/wiki/%E4%BD%BF%E7%94%A8%E8%AF%B4%E6%98%8E
唯一需要注意的地方是 yml 文件里存的是我自己的 Steam ID ,拿来用的话需要改一下。
写这个脚本的时候还顺带用 matplotlib 根据历史数据画了统计图(当然,只有用这个脚本跑过的那些天会有数据,所以第一次跑的话 x 轴上只会有一个日期,不过也可以手动捏造之前的数据):
脚本会遇到各种格式、各种书写习惯的发售日,我选用的一个叫 dateparser 的包挺强大的,中文也好英文也好,许多日期都能被正确地识别;而对于一些模糊的发售日,我制定了一些规则,试着把它们转为某一个确定的、相对合理的日期。比如 Early 2022 会被替换成 2022 年 3 月; Summer 会被替换成 6 月; Q4 会被替换成 11 月,等等。然后将 dateparser 设置为“偏向未来”,就能把只说明月份未说明哪天的日期一律视为月底。
也有一些“黑名单”字段,一旦遇到就跳过,比如“TBD”,“When it's done”等。
另外,在这里使用版本管理的另一个好处是,可以通过 GitHub action 的 commit 记录来观察哪些游戏(悄悄地)更改了发售日期。
1
LuciusChen 2021-12-12 17:04:29 +08:00
不能用,用了钱包守不住。
|
2
MonkeyJon 2021-12-13 09:54:28 +08:00
不能够,发售就买,除非是真粉
|
3
lylsh1993 2021-12-14 21:40:28 +08:00 via iPhone
更简单的是楼主做个日历我们直接订阅😅😅😅
|