| Kluczowe punkty | Szczegóły do zapamiętania |
|---|---|
| 📝 Definicja | Automatyzacja importu okładek i opisów z Screenscraper |
| 🎮 Główne korzyści | Wzbogacenie wizualne frontendu, oszczędność cennego czasu |
| 🔧 Działanie | Pobieranie przez API, łączenie metadanych i obrazów |
| ⚙️ Wymagania wstępne | Instalacja Pythona, konfiguracja klucza API Screenscraper |
| 🚀 Kluczowe kroki | Uruchomienie skryptu, testowanie efektów, zatwierdzanie plików |
| 📂 Organizacja | Strukturyzacja folderów dla każdego systemu |
| 🛠️ Narzędzia | Użycie lekkiego skryptu Python i crona do automatyzacji |
Ten samouczek krok po kroku poprowadzi Cię przez konfigurację Screenscraper i automatyczną integrację okładek oraz opisów w Twoim interfejsie Retrogaming. Kilkoma prostymi poleceniami i ustawieniami wzbogacisz wizualnie swój frontend, mając jednocześnie precyzyjne informacje o każdej grze. Na końcu cron uruchomi operację bez ręcznej interwencji.
Somaire
Wymagania i instalacja Screenscraper
Przede wszystkim upewnij się, że masz ważne konto na Screenscraper oraz klucz API. Będziesz także potrzebować środowiska Python 3.7+ na swoim komputerze lub serwerze.
Aby zainstalować dedykowany moduł Pythona, uruchom:
pip install screenscraper-api
Sprawdź następnie, czy biblioteka działa poprawnie:
python -c "import screenscraper; print(screenscraper.__version__)". Jeśli pojawi się błąd, przeinstaluj lub zaktualizuj pip.
Konfiguracja skryptu importu
Skrypt Python działa jako pomost między API Screenscraper a Twoim frontendem Retrogaming. Pobiera okładki i opisy, a następnie umieszcza je w dedykowanych folderach.
Połączenie z API Screenscraper
Pobierz swój klucz w swoim panelu użytkownika Screenscraper i zapisz go w zmiennej środowiskowej:
export SCREENSCRAPER_KEY="votre_cle"
Następnie w swoim skrypcie:
from screenscraper import ScreenScraperAPI
api = ScreenScraperAPI(key=os.getenv("SCREENSCRAPER_KEY"))
Teraz jesteś gotowy, aby zapytać API.
Dostosowanie filtrów i formatów
Aby dostosować wynik, możesz określić:
- rozmiar obrazów (small, medium, large)
- język opisów (fr, en, it)
- docelowa platforma (nes, snes, arc)
- formaty wyjściowe (png, jpg, txt)
Opcje te przekazuje się jako parametry:
api.get_game_data(game_id, image_size='medium', language='fr')
Przetestuj różne konfiguracje, aby znaleźć tę, która najlepiej pasuje do Twojego motywu.
Integracja z Twoim frontendem Retrogaming
Po pobraniu plików należy je uporządkować i wywołać właściwą ścieżkę w kodzie frontendu. Pomysł polega na standaryzacji lokalizacji dla każdego tytułu.
Organizacja okładek i opisów
Zachowaj przejrzystą strukturę:
| Folder | Zawartość |
|---|---|
| images/ | Okładki nazwane według ID gry (.png) |
| descriptions/ | Pliki tekstowe według ID gry (.txt lub .md) |
| scripts/ | Kod Pythona do importu |
To pozwala frontendowi iterować po tym samym ID i dynamicznie wyświetlać powiązaną okładkę i opis.
Automatyzacja za pomocą zadania cron
Aby uruchamiać import okresowo, utwórz wpis w cronie:
0 3 * * * /usr/bin/python3 /home/user/scripts/import_screenscraper.py >> /var/log/ss_import.log 2>&1
To zadanie wykonuje się każdej nocy o 3 w nocy. Możesz dostosować częstotliwość według swoich potrzeb.
Wskazówka: monitoruj logi, aby szybko naprawić błąd API lub zmianę schematu po stronie Screenscraper.
Testy, debugowanie i dobre praktyki
Zautomatyzowany import może napotkać problemy z wygasłymi kluczami, zmienionymi formatami lub przekroczonymi limitami. Oto kilka wskazówek, jak pozostać operacyjnym:
- Regularnie sprawdzaj ważność swojego klucza API
- Wdroż system ponawiania z opóźnieniem (backoff) w przypadku błędu 429
- Przechowuj historię wersji, aby móc wrócić do poprzednich
- Usuwaj stare, nieodniesione pliki
- Ręcznie weryfikuj kilka okładek po każdym wdrożeniu
- Ustaw alerty na krytyczne kody błędów
- Testuj lokalnie przed wdrożeniem na produkcję
- Dokumentuj każdą zmianę w skrypcie
Do zapamiętania
- Utwórz konto Screenscraper i pobierz swój klucz API
- Zainstaluj dedykowany moduł Pythona i przetestuj połączenie
- Dostosuj filtry (rozmiar, język, platforma)
- Organizuj okładki i opisy w przejrzystej strukturze folderów
- Automatyzuj za pomocą crona i monitoruj logi
- Przewiduj strategie ponawiania i alertów
FAQ
- Jak uzyskać mój klucz API Screenscraper?
Zaloguj się na swoje konto na stronie Screenscraper, przejdź do „Moje konto”, a następnie do „API”, aby wygenerować lub skopiować swój klucz. - Jakie systemy obsługuje Screenscraper?
Platforma obejmuje ponad 200 systemów, od konsol 8-bitowych po automaty arcade, a także nowsze maszyny. - Czy mogę pobrać opisy w kilku językach?
Tak: wystarczy zmienić parametrlanguagepodczas wywołaniaget_game_data(na przykład „en” lub „it”). - Jak zarządzać limitami API?
Monitoruj nagłówki odpowiedzi, aby znać swoje zużycie i wdroż system backoff, aby unikać błędów 429. - Czy skrypt może zastąpić istniejące okładki?
Oczywiście: możesz dodać opcjęoverwrite=True, aby nadpisać poprzednie pliki. - Co zrobić, jeśli brakuje okładek?
Zidentyfikuj niezwrócone ID, przetestuj ręcznie na stronie Screenscraper i uzupełnij ręcznie, jeśli to konieczne.