之前看到 V 友 @monkeylmj 的帖子 iPhone13Pro 抢到了,这几天研究的抢货手段给大家一些经验 分享的监控脚本,因此在他的基础上做了改进,可监控多种产品,并且可以把通知发送到钉钉。
GitHub 传送门:https://github.com/LennonChin/AppleStore-Monitor
建议合理使用,不要设置扫描时间太短,以免 IP 被封。
下面是 GitHub 的 README,直接贴过来了:
本项目应用主要用来监测 Apple Store 线下直营店货源情况,主要使用 Python 实现。
首先感谢iPhone-Pickup-Monitor项目带来的灵感,同时有些实现也直接使用了该项目的一些代码。
本项目在 iPhone-Pickup-Monitor 原有功能的基础上去掉了声音通知,但添加了多货源同时监控以及钉钉消息通知功能。
# 拉取代码
git clone https://github.com/LennonChin/AppleStore-Monitor.git
# 进入目录
cd AppleStore-Monitor
# 安装依赖
pip install -r requirements.txt
[强烈建议配置] 如不配置则没有通知功能。
本监控提供了钉钉监控的功能,可以在监控到有货源时将消息发送到钉钉群。如要启用该功能,首先需要创建一个钉钉群,并添加群机器人,详细可参考文档:
机器人配置完毕后,记下相关的 Access Token 和 Secret Key,后面配置时需要用到。
可以配置多个监控商品:
$> python /User/LennonChin/Codes/AppleStore-Monitor/monitor.py config
--------------------
[0] AirPods
[1] iPhone 13
选择要监控的产品:0
--------------------
[0] AirPods
[1] AirPods Max
选择要监控的产品子类:1
--------------------
[0] AirPods Max - 银色
选择要监控的产品型号:0
--------------------
是否添加更多产品[Enter 继续添加,非 Enter 键退出]:
--------------------
[0] AirPods
[1] iPhone 13
选择要监控的产品:1
--------------------
...
[3] iPhone 13 Pro Max
选择要监控的产品子类:3
--------------------
...
[11] 512GB 远峰蓝色
...
选择要监控的产品型号:11
--------------------
是否添加更多产品[Enter 继续添加,非 Enter 键退出]:n
选择计划预约的地址:
请稍后...1/3
--------------------
[0] 北京
[1] 上海
...
请选择序号:1
请稍后...2/3
请稍后...3/3
--------------------
[0] 黄浦区
...
请选择序号:0
正在加载网络资源...
--------------------
输入钉钉机器人 Access Token[如不配置直接回车即可]:# 此处如不配置,就没有通知功能
输入钉钉机器人 Secret Key[如不配置直接回车即可]:# 此处如不配置,就没有通知功能
--------------------
输入扫描间隔时间[以秒为单位,默认为 15 秒,如不配置直接回车即可]:30 # 不建议太短,以免扫描过于频繁导致 IP 被封
扫描配置已生成,并已写入到 apple_store_monitor_configs.json 文件中
请使用 python /User/LennonChin/Codes/AppleStore-Monitor/monitor.py start 命令启动监控
配置完成后,会在当前目录下生成一个apple_store_monitor_configs.json文件:
{
"selected_products": {
"MGYJ3CH/A": [
"AirPods Max",
"AirPods Max - \u94f6\u8272"
],
"MLHG3CH/A": [
"iPhone 13 Pro Max",
"512GB \u8fdc\u5cf0\u84dd\u8272"
]
},
"selected_area": "\u4e0a\u6d77 \u4e0a\u6d77 \u9ec4\u6d66\u533a",
"dingtalk_configs": {
"access_token": "",
"secret_key": ""
},
"scan_interval": 30
}
如果你明白每项的意思,也可以手动填写该 JSON 文件,不过一定要按照上面例子中的层级,尤其是selected_products
部分。
另外欢迎各位补充本项目的products.json文件,添加更多产品信息。
接下来只需要用下面的命令启动监控即可:
比如前台启动:
$> python /User/LennonChin/Codes/AppleStore-Monitor/monitor.py start
或者后台启动:
$> nohup python -u monitor.py start > monitor.log 2>&1 &
4 种情况会通知:
相关通知截图:
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.