scraping dati e url aggiuntivi
Moderatore: Moderatore ADB
-
motoschifo
- Progetto Arcade Database
- Messaggi: 3272
- Iscritto il: 12/07/2013, 20:29
- Medaglie: 2
- Città: Parma
- Località: Parma
- Grazie Inviati: 32 volte
- Grazie Ricevuti: 32 volte
- Contatta:
Re: scraping dati e url aggiuntivi
Secondo me è troppo pericoloso togliere pezzi presenti nei chip, e forse a volte può dimostrarsi inutile. Pensa al caso di doppia parentesi, parentesi con virgola, ecc.
Forse la via più rapida è quella di farlo manualmente scremando prima una serie di titoli.
Si stabilisce la regola, si capisce se può andare bene, e si applica.
Come scritto sopra la validazione è completamente manuale (per scelta) in quanto solo una persona può capire se è giusto o no un nome.
Magari può andar bene togliere tutto quanto dentro alle parentesi, poi eventualmente si aggiunge manualmente.
Forse la via più rapida è quella di farlo manualmente scremando prima una serie di titoli.
Si stabilisce la regola, si capisce se può andare bene, e si applica.
Come scritto sopra la validazione è completamente manuale (per scelta) in quanto solo una persona può capire se è giusto o no un nome.
Magari può andar bene togliere tutto quanto dentro alle parentesi, poi eventualmente si aggiunge manualmente.
Motoschifo
CAB ›MameOriz ›MameVert ›PCB ›NeoGeo ›TopDrive ›Tekken3 Wishlist ›PacMan ›Arkanoid
Flipper ›HighSpeed Wishlist ›MedievalMadness ›MonsterBash ›HighSpeed2 Web ›ArcadeDatabase
CAB ›MameOriz ›MameVert ›PCB ›NeoGeo ›TopDrive ›Tekken3 Wishlist ›PacMan ›Arkanoid
Flipper ›HighSpeed Wishlist ›MedievalMadness ›MonsterBash ›HighSpeed2 Web ›ArcadeDatabase
- Gothrek
- Moderatore
- Messaggi: 4880
- Iscritto il: 13/07/2017, 13:30
- Città: Roma
- Grazie Inviati: 17 volte
- Grazie Ricevuti: 272 volte
Re: scraping dati e url aggiuntivi
provo a titar giu l'elenco dalle mie circa 3000 rom e a togliere parentesi e contenuto e vediamo che viene fuori verificando se restano parentesi o altro- certo strano che non resti il nome del titolo originale da qualche partemotoschifo ha scritto: ↑22/05/2020, 20:38 Secondo me è troppo pericoloso togliere pezzi presenti nei chip, e forse a volte può dimostrarsi inutile. Pensa al caso di doppia parentesi, parentesi con virgola, ecc.
Forse la via più rapida è quella di farlo manualmente scremando prima una serie di titoli.
Si stabilisce la regola, si capisce se può andare bene, e si applica.
Come scritto sopra la validazione è completamente manuale (per scelta) in quanto solo una persona può capire se è giusto o no un nome.
Magari può andar bene togliere tutto quanto dentro alle parentesi, poi eventualmente si aggiunge manualmente.
-
motoschifo
- Progetto Arcade Database
- Messaggi: 3272
- Iscritto il: 12/07/2013, 20:29
- Medaglie: 2
- Città: Parma
- Località: Parma
- Grazie Inviati: 32 volte
- Grazie Ricevuti: 32 volte
- Contatta:
Re: scraping dati e url aggiuntivi
Non esiste il nome originale, come dici, ogni gioco è semplicemente diverso dagli altri e caratterizzato da una miriade di varianti.
In effetti credo sia una mancanza dell'xml in quanto poi in giro si fa sempre riferimento al nome comune... mah.
In effetti credo sia una mancanza dell'xml in quanto poi in giro si fa sempre riferimento al nome comune... mah.
Motoschifo
CAB ›MameOriz ›MameVert ›PCB ›NeoGeo ›TopDrive ›Tekken3 Wishlist ›PacMan ›Arkanoid
Flipper ›HighSpeed Wishlist ›MedievalMadness ›MonsterBash ›HighSpeed2 Web ›ArcadeDatabase
CAB ›MameOriz ›MameVert ›PCB ›NeoGeo ›TopDrive ›Tekken3 Wishlist ›PacMan ›Arkanoid
Flipper ›HighSpeed Wishlist ›MedievalMadness ›MonsterBash ›HighSpeed2 Web ›ArcadeDatabase
- Gothrek
- Moderatore
- Messaggi: 4880
- Iscritto il: 13/07/2017, 13:30
- Città: Roma
- Grazie Inviati: 17 volte
- Grazie Ricevuti: 272 volte
Re: scraping dati e url aggiuntivi
si il problema principale è riuscire dal nome a capire se è già presente nel tuo archivio locale, chiaro che laddove si aggiungono caratteri numeri e quant'altro secondo la logica di creare le info sarebbe bello avere almeno il titolo "generico".
l'idea in generale è avere un gioco, n titoli, n rom. Cosi cercando tra i propri media per gioco potresti avere sott'occhio un pò tutto quello che esiste (almeno localmente) di relazionato.
l'idea in generale è avere un gioco, n titoli, n rom. Cosi cercando tra i propri media per gioco potresti avere sott'occhio un pò tutto quello che esiste (almeno localmente) di relazionato.
-
motoschifo
- Progetto Arcade Database
- Messaggi: 3272
- Iscritto il: 12/07/2013, 20:29
- Medaglie: 2
- Città: Parma
- Località: Parma
- Grazie Inviati: 32 volte
- Grazie Ricevuti: 32 volte
- Contatta:
Re: scraping dati e url aggiuntivi
Ho completato le modifiche, aggiungendo il campo SHORT_TITLE in output nelle pagine di scraping.
Quel valore viene aggiornato manualmente da me ad ogni import.
Normalmente basta togliere i dati tra parentesi ma a volte ci sono casi particolari di nomi scritti male (contenenti errori tipo parentesi non chiusa o non aperta).
Quel valore viene aggiornato manualmente da me ad ogni import.
Normalmente basta togliere i dati tra parentesi ma a volte ci sono casi particolari di nomi scritti male (contenenti errori tipo parentesi non chiusa o non aperta).
Motoschifo
CAB ›MameOriz ›MameVert ›PCB ›NeoGeo ›TopDrive ›Tekken3 Wishlist ›PacMan ›Arkanoid
Flipper ›HighSpeed Wishlist ›MedievalMadness ›MonsterBash ›HighSpeed2 Web ›ArcadeDatabase
CAB ›MameOriz ›MameVert ›PCB ›NeoGeo ›TopDrive ›Tekken3 Wishlist ›PacMan ›Arkanoid
Flipper ›HighSpeed Wishlist ›MedievalMadness ›MonsterBash ›HighSpeed2 Web ›ArcadeDatabase
- Gothrek
- Moderatore
- Messaggi: 4880
- Iscritto il: 13/07/2017, 13:30
- Città: Roma
- Grazie Inviati: 17 volte
- Grazie Ricevuti: 272 volte
Re: scraping dati e url aggiuntivi
grazie @motoschifo , lo implemento subito.motoschifo ha scritto: ↑21/06/2020, 15:51 Ho completato le modifiche, aggiungendo il campo SHORT_TITLE in output nelle pagine di scraping.
Quel valore viene aggiornato manualmente da me ad ogni import.
Normalmente basta togliere i dati tra parentesi ma a volte ci sono casi particolari di nomi scritti male (contenenti errori tipo parentesi non chiusa o non aperta).
In via temporanea anche io avevo ripiegato sull'eliminazione della parentesi, anche se poi mi sono accorto che a parte qualche errore in tanti casi si utilizzano i due punti (:) invece del trattino meno (-) e quindi non matchava cmq il titolo.
Vediamo come va con questa implementazione.
Grazie come sempre.
devo riuscire a migliorare la funzionalità di matching del titolo, ad oggi son cosi: se in alcuni casi lavorando sul titolo son riuscito a raggrupparli vedi 1941 in altri manca ancora qualcosa (1942, 1943, 1944)
Non hai i permessi necessari per visualizzare i file allegati in questo messaggio.
-
motoschifo
- Progetto Arcade Database
- Messaggi: 3272
- Iscritto il: 12/07/2013, 20:29
- Medaglie: 2
- Città: Parma
- Località: Parma
- Grazie Inviati: 32 volte
- Grazie Ricevuti: 32 volte
- Contatta:
Re: scraping dati e url aggiuntivi
Puoi dare in pasto il tuo nome ad una funzione per togliere eventuali simboli (due punti, trattino, uguale, spazi, ecc) e fare il match solo con le lettere. Nel 99% dei casi dovrebbe bastare quello.
Come regola standard ho rimosso parentesi tonde e quadre (queste ultime manualmente) ma mantengo quasi tutti simboli e lettere.
Considera che posso esporre una nuova funzione di ricerca che magari utilizza questo nuovo campo per avere i romset corrispondenti.
Questa è la parte php interessata, ovviamente a mano posso intervenire sul titolo ma correggo solo quando vedo anomalie (es. lettere alfa/beta/parentesi non chiuse, ecc):
Come regola standard ho rimosso parentesi tonde e quadre (queste ultime manualmente) ma mantengo quasi tutti simboli e lettere.
Considera che posso esporre una nuova funzione di ricerca che magari utilizza questo nuovo campo per avere i romset corrispondenti.
Questa è la parte php interessata, ovviamente a mano posso intervenire sul titolo ma correggo solo quando vedo anomalie (es. lettere alfa/beta/parentesi non chiuse, ecc):
Codice: Seleziona tutto
$lower_case = "abcdefghijklmnopqrstuvwxyzàèìòùáéíóúäëïöü";
$upper_case = strtoupper($lower_case);
$numbers = "0123456789";
$extra = "!?@#&*-_ '/.,:;%+$\"`µ";
$valid_chars = $lower_case.$upper_case.$numbers.$extra;
$game_short_title = $game_description;
// tolgo le parentesi, anche annidate
$game_short_title = preg_replace("/\(([^()]*+|(?R))*\)/","", $game_short_title);
// tolgo pezzi particolari per smaltire il lavoro manuale
$game_short_title = str_replace(
array("[BET]", "[Dutch]", "[German]", "[TTL]"),
"",
$game_short_title
);
$game_short_title = trim($game_short_title);
if (!str_contains_only($game_short_title, $valid_chars)) {
$log->debug("...{$game_name} - {$game_description} *** FAILED ***");
continue;
}
function str_contains_only($name, $chars) {
for ($i=0; isset($name[$i]); $i++) {
if (strpos($chars, $name[$i])===false) {
global $log;
$log->debug("...INVALID CHAR FOUND '{$name[$i]}' in '{$name}' (valid chars: >{$chars}<)");
return false;
}
}
return true;
}
Motoschifo
CAB ›MameOriz ›MameVert ›PCB ›NeoGeo ›TopDrive ›Tekken3 Wishlist ›PacMan ›Arkanoid
Flipper ›HighSpeed Wishlist ›MedievalMadness ›MonsterBash ›HighSpeed2 Web ›ArcadeDatabase
CAB ›MameOriz ›MameVert ›PCB ›NeoGeo ›TopDrive ›Tekken3 Wishlist ›PacMan ›Arkanoid
Flipper ›HighSpeed Wishlist ›MedievalMadness ›MonsterBash ›HighSpeed2 Web ›ArcadeDatabase
- Gothrek
- Moderatore
- Messaggi: 4880
- Iscritto il: 13/07/2017, 13:30
- Città: Roma
- Grazie Inviati: 17 volte
- Grazie Ricevuti: 272 volte
Re: scraping dati e url aggiuntivi
gran belkla idea quella di lasciare solo le lettere e depurarla per il match, l'idea per entrambi credo sia fare meno lavoro manuale possibile cosi da automattizzare quanto piu' possibile.
voglio provare a dargli in pasto domani mattina un 10K di rom, per vedere quanti casi "fail" ho.
voglio provare a dargli in pasto domani mattina un 10K di rom, per vedere quanti casi "fail" ho.
- Gothrek
- Moderatore
- Messaggi: 4880
- Iscritto il: 13/07/2017, 13:30
- Città: Roma
- Grazie Inviati: 17 volte
- Grazie Ricevuti: 272 volte
Re: scraping dati e url aggiuntivi
La tua idea dei caratteri mi piace, e sicuramente migliora il matching.
Nel caso di 1944 riuscirebbe ad accorparli, sto cercando una soluzione per 1943 dove nache con questo sistema i giochi sarebbero 2.
Nel caso di 1944 riuscirebbe ad accorparli, sto cercando una soluzione per 1943 dove nache con questo sistema i giochi sarebbero 2.
Non hai i permessi necessari per visualizzare i file allegati in questo messaggio.
-
motoschifo
- Progetto Arcade Database
- Messaggi: 3272
- Iscritto il: 12/07/2013, 20:29
- Medaglie: 2
- Città: Parma
- Località: Parma
- Grazie Inviati: 32 volte
- Grazie Ricevuti: 32 volte
- Contatta:
Re: scraping dati e url aggiuntivi
Aggiornato adesso al Mame 0.222: 311 titoli da inserire, di cui solo 3 manualmente e tutti gli altri in automatico.
Motoschifo
CAB ›MameOriz ›MameVert ›PCB ›NeoGeo ›TopDrive ›Tekken3 Wishlist ›PacMan ›Arkanoid
Flipper ›HighSpeed Wishlist ›MedievalMadness ›MonsterBash ›HighSpeed2 Web ›ArcadeDatabase
CAB ›MameOriz ›MameVert ›PCB ›NeoGeo ›TopDrive ›Tekken3 Wishlist ›PacMan ›Arkanoid
Flipper ›HighSpeed Wishlist ›MedievalMadness ›MonsterBash ›HighSpeed2 Web ›ArcadeDatabase