Scraping
Baixar capas, capturas de tela e metadados dos seus jogos
O scraping transforma uma lista de nomes de arquivo em uma biblioteca: capa, capturas de tela, descrição, data de lançamento e nota para cada jogo. O EmulationStation faz isso no próprio aparelho, sem precisar de computador.
Quais bases de dados estão disponíveis
Abra o menu principal do EmulationStation e escolha Scraper. A lista Scrape from nesta build tem duas entradas:
| Base | Precisa de conta | Cobre |
|---|---|---|
| IGDB | Client ID e Client Secret | A maioria dos consoles e computadores |
| ArcadeDB | Nenhuma | Arcade, Neo Geo e portáteis de LCD |
O EmulationStation também tem código para ScreenScraper, TheGamesDB e HfsDB, mas esses três só são compilados quando quem gera a imagem fornece as próprias credenciais de API. As imagens publicadas do ArchR são compiladas sem elas, então não aparecem na lista. Se você mesmo compilar o ArchR e exportar SCREENSCRAPER_DEV_LOGIN ou GAMESDB_APIKEY antes da build, eles voltam.
Configurar o IGDB
O IGDB usa credenciais da Twitch. Registre uma aplicação em dev.twitch.tv/console/apps e você recebe um Client ID e um Client Secret. Os dois são gratuitos.
Conecte o console à rede
ES → Network Settings → Enable WiFi, depois preencha WiFi SSID e WiFi key.
Abra o scraper
ES → Scraper. Ele tem três abas: Scrape, Options e Accounts.
Informe suas credenciais
Na aba Accounts, preencha Client ID e Client Secret em IGDB.
Escolha o que baixar
Na aba Options, escolha um Image source e um Box source. As opções mudam conforme a base: o IGDB oferece Screenshot, Box 2D e Fan Art, o ArcadeDB oferece também Title screenshot, Marquee e vídeo.
Escolha o que vai ser processado
De volta à aba Scrape, defina Games to scrape for e marque os sistemas em Systems included. O Ignore recently scraped games vem em 15 dias, então rodar de novo não refaz o que já foi feito.
Comece
Aperte Scrape now. Ele roda em segundo plano e você pode continuar navegando enquanto isso.
Opções que vale conhecer
- Games to scrape for: All, Games missing any media ou Games missing all media. A do meio é a padrão e é a que você quer para completar o que faltou.
- Overwrite names, Overwrite descriptions e Overwrite medias decidem se um valor existente é substituído ou mantido. Desligue a substituição se você já ajustou títulos na mão.
- Preferred region só aparece nas bases que publicam dados por região.
- Included scrapers, dentro de Manual scrape, controla quais bases a tela de busca por jogo oferece. É uma configuração separada do Scrape from.
Onde os arquivos ficam
As mídias ficam junto das ROMs, uma pasta por tipo:
/storage/roms/<sistema>/images/ capas, capturas de tela, logos
/storage/roms/<sistema>/videos/ vídeos de prévia
/storage/roms/<sistema>/manuals/ manuais
/storage/roms/<sistema>/gamelist.xml títulos, descrições, notas, datasEssas pastas são ignoradas quando o EmulationStation monta a lista de jogos, então nunca aparecem como jogos falsos.
Corrigir um jogo na mão
As bases erram, principalmente com importados japoneses e hacks. Selecione o jogo, aperte X para abrir Game options e escolha Edit this game's metadata. As mudanças vão para o gamelist.xml daquele sistema.
Se o seu console abre os save states no X, alguém desligou Access game options with north button em User Interface Settings. Com essa chave desligada, as opções do jogo passam para o A pressionado por um segundo.
Editar o gamelist.xml direto
É XML simples, então edições em lote a partir do computador são fáceis por SSH ou Samba. O EmulationStation mantém a lista na memória e reescreve o arquivo quando sai, então pare o serviço antes ou suas edições serão sobrescritas:
systemctl stop emustation
# edite /storage/roms/<sistema>/gamelist.xml
systemctl start emustationFaça backup antes de uma rodada longa
Um scraping grande pode deixar metadados pela metade se for interrompido. Copie o arquivo antes:
ssh root@archr.local
cd /storage/roms/snes
cp gamelist.xml gamelist.backup.xmlNão existe scraper em linha de comando
O ArchR não distribui o Skyscraper nem outro scraper avulso, e o que vem embutido só roda dentro do EmulationStation. Ou seja, não dá para parar o EmulationStation e deixar um scraping rodando a noite toda. Se você quer a tela apagada enquanto ele trabalha, coloque um tempo curto de protetor de tela em UI Settings → Screensaver settings e deixe o console no carregador.
O scraping não está entre os serviços que o ArchR pausa quando um jogo começa, então evite abrir um jogo no meio de uma rodada longa.