Die Beschaffung eines generalüberholten Steam Decks in Europa kann aufgrund schwankender Lagerbestände eine Herausforderung sein. Dieser auf Python basierende Verfügbarkeitsprüfer automatisiert den Prozess und stellt Echtzeitbenachrichtigungen bereit, wenn generalüberholte Einheiten verfügbar sind. Dieser Beitrag beschreibt die technische Umsetzung des Projekts und ermutigt zu Community-Beiträgen.
Projektübersicht
Dieses Python-Skript überwacht den Steam-Shop auf die Verfügbarkeit von generalüberholten Steam Decks in Europa. Mithilfe des ntfy-Benachrichtigungsdienstes werden Benutzer sofort benachrichtigt, wenn Lagerbestände verfügbar werden. Das Projekt demonstriert effiziente Problemlösungen mithilfe leicht verfügbarer Python-Bibliotheken und APIs.
Funktionalität
Das Skript funktioniert wie folgt:
Kernlogik:
<code class="language-python">from urllib.request import urlopen # Configure your ntfy URL ntfy_url = "ntfy.sh/YOUR_NTFY_URL" # Timeout to prevent script hang-ups 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"Refurbished {name} Steam Deck is available!" print(message) with urlopen(f"https://{ntfy_url}", data=str.encode(message), timeout=timeout): pass if __name__ == "__main__": # Uncomment for notification testing # notify("TEST") # Refurbished 64GB (European region, tested in Poland) if is_available("COGVNxICUEw="): notify("64GB")</code>
Ausführung
ntfy_url
durch Ihre persönliche ntfy-URL (besorgen Sie sich eine von der ntfy-Website). Für Benachrichtigungen wird die mobile NTFY-App empfohlen.ntfy.sh
und api.steampowered.com
zu Ihren vertrauenswürdigen Sites in den Internet Explorer-Einstellungen hinzu.Fazit
Dieses Projekt unterstreicht die Leistungsfähigkeit prägnanter Python-Skripte für praktische Aufgaben. Es dient als wertvolle Lernressource für API-Interaktion, Benachrichtigungen und Python-Automatisierung. Der vollständige Code ist auf GitHub verfügbar und lädt zu Beiträgen und Anpassungen ein.
Das obige ist der detaillierte Inhalt vonAufbau eines Verfügbarkeitsprüfers für generalüberholte Steam-Decks in Europa. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!