User:Flacs: Difference between revisions
Jump to navigation
Jump to search
(add Python script to find dead YouTube videos) |
|||
Line 1: | Line 1: | ||
flacs on freenode | flacs on freenode | ||
= Find Dead YouTube Videos = | |||
# Go to [[Special:Export]] | |||
# add game categories: | |||
#* Category:GameCube_games | |||
#* Category:Triforce_games | |||
#* Category:Wii_games | |||
#* Category:Virtual_Console_games | |||
#* Category:Wii_Channels | |||
#* Category:WiiWare_games | |||
# click Export | |||
# create a Google API key (https://console.cloud.google.com/apis/credentials) | |||
# run ./the_following_script.py Dolphin+Emulator+Wiki-*.xml | |||
<pre> | |||
#!/usr/bin/env python3 | |||
import re | |||
import requests | |||
import sys | |||
API_KEY = 'PUT YOUR API KEY HERE' | |||
for path in sys.argv[1:]: | |||
text = open(path).read() | |||
ids = re.findall(r'(?<=vid.=)[^|]{11}(?=\|)', text) | |||
print(f'found {len(ids)} YouTube videos') | |||
for i in range(0, len(ids), 50): | |||
chunk = ids[i:i+50] | |||
response = requests.get( | |||
'https://youtube.googleapis.com/youtube/v3/videos', | |||
params={'part': 'id', 'key': API_KEY, 'id': ','.join(chunk)}, | |||
headers={'Accept': 'application/json'}, | |||
) | |||
valid_ids = [item['id'] for item in response.json()['items']] | |||
for id in chunk: | |||
if id not in valid_ids: | |||
print(id) | |||
</pre> | |||
= Articles without videos by platform = | = Articles without videos by platform = |
Revision as of 20:31, 21 February 2021
flacs on freenode
Find Dead YouTube Videos
- Go to Special:Export
- add game categories:
- Category:GameCube_games
- Category:Triforce_games
- Category:Wii_games
- Category:Virtual_Console_games
- Category:Wii_Channels
- Category:WiiWare_games
- click Export
- create a Google API key (https://console.cloud.google.com/apis/credentials)
- run ./the_following_script.py Dolphin+Emulator+Wiki-*.xml
#!/usr/bin/env python3 import re import requests import sys API_KEY = 'PUT YOUR API KEY HERE' for path in sys.argv[1:]: text = open(path).read() ids = re.findall(r'(?<=vid.=)[^|]{11}(?=\|)', text) print(f'found {len(ids)} YouTube videos') for i in range(0, len(ids), 50): chunk = ids[i:i+50] response = requests.get( 'https://youtube.googleapis.com/youtube/v3/videos', params={'part': 'id', 'key': API_KEY, 'id': ','.join(chunk)}, headers={'Accept': 'application/json'}, ) valid_ids = [item['id'] for item in response.json()['items']] for id in chunk: if id not in valid_ids: print(id)
Articles without videos by platform
GameCube | list |
Wii | list |
WiiWare | list |
Wii Channels | list |
Virtual Console | list |
Triforce | list |
Flattened Lists | list |
Not released
No indication that these games were ever sold. We have compatibility ratings for some of them but I think those are bogus.
- Beat the Intro
- B-Units: Build it!
- Clever Kids: Farmyard Fun
- Clever Kids: Pet Store
- Clever Kids: Pirates
- Combat_Wings: The Great Battles of WWII - released for PC and possibly on other consoles, probably cancelled for Wii
- DT Carnage
- Earache: Extreme Metal Racing
- Get Up Games: Family Sports
- Jakers! Let's Explore
- Nightsky - released for 3DS, probably cancelled for Wii
Some Homebrew Game IDs
- OSGK - Gecko OS 1.9.1
- 7531 - Gecko OS 1.9.3
- UGG3 - Gecko OS 1.9.3.1
- GSWWGL/GSWEGL/GSWPGL/GSWJGL - Swiss
- UNEO - USB Loader GX forwarder
- UNLR - USB Loader GX channel
- LXVS - Nintendont forwarder
- UCXF - CFG USB Loader forwarder
- RIIVRI - Riivolution
- 9XGX - SNES9xGX
- VBGX - Visual Boy Advance GX
- DWFA - WiiFlow
Valid Channel IDs
Nintendo's update servers offer TMD downloads for these IDs (so far I've only enumerated A/E/J/K/P regions):
- HAAA01
- HABA01 HABK01
- HACA01
- HADE01 HADJ01 HADP01
- HAFA01 HAFE01 HAFJ01 HAFP01
- HAGA01 HAGE01 HAGJ01 HAGP01
- HAJE01 HAJJ01 HAJP01
- HAKE01 HAKJ01 HAKK01 HAKP01
- HALE01 HALJ01 HALK01 HALP01
- HAPE01 HAPJ01 HAPP01
- HATE01 HATJ01 HATP01
- HAVJ01 HAVK01 HAVP01 (no E version)
- HAWE01 HAWP01 (no J version)
- HAYA01 HAYK01
- HBNJ01 (no E/P versions)
- HCAJ01 HCAP01 (no E version)
- HCBJ01 (no E/P versions)
- HCCJ01 (no E/P versions)
- HCDJ01 (no E/P versions)
- HCFE01 HCFJ01 HCFK01 HCFP01
- HCHJ01 (no E/P versions)
- HCIJ01 (no E/P versions)
- HCJP01 (no E/J versions)
- HCLEXN HCLPXN (no J version)
- HCQEXB HCQJXB (no P version)
- HCMP01 (no E/J versions)
- HCRE01 HCRJ01 HCRK01 HCRP01
- HCSE01 HCSJ01 HCSP01
- HCTE01 HCTJ01 HCTP01
- HCWEWD (no P/J versions)
- HCXEWB HCXJWB (no P version)
- HCYJ01 (no E/P versions, "Wii U Main Unit Update Repair Program" according to GameTDB)
- HC2DAX (no E/J/P versions)
- HC3J01 (no E/P versions)
- HC4E9Z HC4P9Z (no J version)
- HDMD01 HDME01 HDMJ01 HDMP01 (Dr. Mario Online RX Beta)
- HFNJ01 (no E/P versions, "Wii Fit Body Check Channel" according to GameTDB)
Notably absent:
- HACK01 (found A version, so this one is probably invalid)
- HCBP01 (found J version, so this one is probably invalid)
- HCGE01 HCGJ01 HCGP01 HCGX01 (confirmed to exist but TMD 404s)
- HCUE01 HCUJ01 HCUP01 (Wii U)
- HCVAZZ (Wii U)
- HCWPWD (found E version, so this one is probably invalid)
- HCXPWB (found E/J versions, so this one is probably invalid)
Invalid Game IDs
Virtual Console game IDs on this Wiki for which Nintendo's update server returns 404:
- FCYK01 - Yoshi's Cookie (NES/FC), released in other regions
- KO release indicated on GameFaq
- FD6J01 - Adventures of Lolo 2 (NES/FC), released in other regions
- JP release indicated on GameFAQ
- FFPE01 - Ufouria: The Saga (NES/FC), released in Japan
- NA release indicated on GameFAQ
- FFUE01 - Adventure Island II (NES/FC), released in Japan
- NA release indicated on GameFAQ
- JEAP01 - Natsume Championship Wrestling (SNES/SFC), released in NA
- EU release indicated on GameFAQ
- MBXP8P - Ecco Jr. (Genesis/SMD), released in other regions
- EU release indicated on GameFAQ]
- MCHP8P - M.U.S.H.A. (Genesis/SMD), released in other regions
- EU release indicated on GameFAQ
Not sure how we even got these IDs:
All Official Game IDs
(commented out)