
Steam Deck 已成为便携式PC游戏玩家的革命性产品。然而,由于供应有限,获取翻新机型并非易事。为此,我开发了一个基于Python的Steam Deck可用性检查器,用于监控欧洲市场上翻新Steam Deck的库存情况。
本文将深入探讨该项目的技术细节,提供实用代码片段,并欢迎其他开发者贡献代码。
Steam Deck可用性检查器是一个Python脚本,可自动监控Steam商店的库存状态。它利用ntfy通知服务,在设备可用时向用户发送实时提醒。
该项目充分展现了如何使用简单的内置Python库和API高效解决实际问题。
脚本的工作流程十分简洁:
核心逻辑简述如下:
<code class="python">from urllib.request import urlopen
# 请替换为您的ntfy URL
ntfy_url = "ntfy.sh/YOUR_NTFY_URL"
# 设置超时时间,防止脚本挂起
timeout = 8
def parse_availability(data: bytes) -> bool:
parsed = " ".join(f"{c:02X}" for c in data)
not_available = "08 00 10 00"
return parsed != not_available
def is_available(id_: str) -> bool:
url = (
"api.steampowered.com/IPhysicalGoodsService/"
"CheckInventoryAvailableByPackage/v1?origin="
f"https://store.steampowered.com&input_protobuf_encoded={id_}"
)
with urlopen(f"https://{url}", timeout=timeout) as response:
data = response.read()
return parse_availability(data)
def notify(name: str) -> None:
message = f"{name}版本现已上市!"
print(message)
with urlopen(f"https://{ntfy_url}", data=str.encode(message), timeout=timeout):
pass
if __name__ == "__main__":
# 取消注释以测试通知功能
# notify("测试")
# 欧洲地区翻新64GB版本,在波兰测试有效
if is_available("COGVNxICUEw="):
notify("64GB")</code>运行脚本
ntfy_url替换为您自己的URL。访问ntfy网站获取您的URL。强烈建议您在iOS/Android手机上安装ntfy应用。对于Windows服务器,您可能需要将ntfy.sh和api.steampowered.com添加到IE设置中的受信任站点。
总结
Steam Deck可用性检查器展示了如何利用简单的Python脚本解决实际问题。对于希望学习API、通知和Python自动化,并同时构建实用工具的开发者来说,这是一个极佳的项目。
欢迎访问GitHub仓库查看完整代码,为项目贡献代码,或根据您的需求自定义脚本。
祝您编程愉快!
以上就是为欧洲翻新蒸汽甲板构建可用性检查器的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号