diff --git a/data/missing.md b/data/missing.md index e25992c5..b5a1f8e1 100644 --- a/data/missing.md +++ b/data/missing.md @@ -5239,7 +5239,6 @@ * [Cool Dragon](https://www.pcgamingwiki.com/wiki/?curid=94003) * [Cool Headed](https://www.pcgamingwiki.com/wiki/?curid=109028) * [Cool Spot](https://www.pcgamingwiki.com/wiki/?curid=176670) -* [Cool World](https://www.pcgamingwiki.com/wiki/?curid=182987) * [Coop Tank War](https://www.pcgamingwiki.com/wiki/?curid=121327) * [Cop Academy](https://www.pcgamingwiki.com/wiki/?curid=130042) * [Copa Petrobras de Marcas](https://www.pcgamingwiki.com/wiki/?curid=48262) diff --git a/data/wiki-game-cache.yaml b/data/wiki-game-cache.yaml index cf9c4315..0a4a64b0 100644 --- a/data/wiki-game-cache.yaml +++ b/data/wiki-game-cache.yaml @@ -36511,8 +36511,6 @@ Cool Headed: steam: 848660 Cool Spot: pageId: 176670 -Cool World: - pageId: 182987 Coop Tank War: pageId: 121327 steam: 960010 diff --git a/src/wiki.rs b/src/wiki.rs index 403c6d44..9fa5a517 100644 --- a/src/wiki.rs +++ b/src/wiki.rs @@ -299,23 +299,30 @@ impl WikiCache { // (If they have a redirect, then the recent changes code takes care of it.) let Some(new_title) = get_page_title(cached.page_id).await? else { // Page no longer exists. - println!(":: refesh: page no longer exists"); + println!(":: refresh: page no longer exists"); self.0.remove(title); continue; }; + println!( ":: refresh: page {} called '{}' renamed to '{}'", cached.page_id, title, &new_title ); - let mut data = self.0[title].clone(); - data.renamed_from.push(title.clone()); - self.0.insert(new_title.clone(), data); - self.0.remove(title); + if new_title.starts_with("File:") || new_title.starts_with("Company:") { + println!(":: refresh: page is no longer a game"); + self.0.remove(title); + continue; + } + + let mut latest = WikiCacheEntry::fetch_from_page(new_title.clone()).await?; + + let mut cached = self.0[title].clone(); + cached.renamed_from.push(title.clone()); + latest.renamed_from = cached.renamed_from; - let mut latest = WikiCacheEntry::fetch_from_page(title.clone()).await?; - latest.renamed_from = cached.renamed_from.clone(); self.0.insert(new_title.clone(), latest); + self.0.remove(title); } Err(e) => { return Err(e);