4 * Find ouya game images missing in the internet archive
6 chdir(__DIR__ . '/../old-data/');
8 $iaDataFiles = glob('ia-data/ouya_*_*.json');
9 foreach ($iaDataFiles as $iaJsonFile) {
10 $iaPackage = basename($iaJsonFile, '.json');
11 $parts = explode('_', $iaPackage);
12 if (count($parts) != 3) {
16 fwrite(STDERR, $package . "\n");
18 $iaImages = loadIaImages($iaJsonFile);
20 $ouyaDetailsFile = 'devs.ouya.tv/api/v1/apps/' . $package . '.json';
21 if (!file_exists($ouyaDetailsFile)) {
22 fwrite(STDERR, " ERR: ouya file missing $ouyaDetailsFile\n");
25 $details = json_decode(file_get_contents($ouyaDetailsFile));
26 if ($details === null) {
27 fwrite(STDERR, "error opening " . $ouyaDetailsFile . "\n");
32 foreach ($details->app->filepickerScreenshots as $imageUrl) {
34 findIaImage($iaImages, $imageUrl, $iaPackage);
37 findIaImage($iaImages, $details->app->mainImageFullUrl, $iaPackage);
42 function findIaImage($iaImages, $imageUrl, $iaPackage)
44 // https://d3e4aumcqn8cw3.cloudfront.net/api/file/tC4RIGJLQvG2uG1av9jN
45 $imageName = basename($imageUrl);
46 if (isset($iaImages[$imageName . '.png'])) {
49 if (isset($iaImages[$imageName . '.jpg'])) {
53 $cwUrl = str_replace('https://', 'http://tmp.cweiske.de/', $imageUrl);
55 $localPath = str_replace('https://', '/media/cweiske/videos/ouya-backup/', $imageUrl);
56 if (!file_exists($localPath)) {
57 fwrite(STDERR, " local file not found: $localPath\n");
60 echo $iaPackage . ',' . $cwUrl . ',' . $imageUrl . "\n";
63 function loadIaImages($iaJsonFile)
65 $iaSlug = basename($iaJsonFile, '.json');
66 $data = json_decode(file_get_contents($iaJsonFile));
68 foreach ($data->files as $file) {
69 if ($file->source != 'original') {
72 if ($file->format != 'JPEG' && $file->format != 'PNG') {
76 $images[$file->name] = 'https://archive.org/download/' . $iaSlug . '/' . $file->name;
83 $gamefiles = glob('devs.ouya.tv/api/v1/apps/*.json');
84 //$gamefiles = glob('devs.ouya.tv/api/v1/apps/net.froem*.json');
86 foreach ($gamefiles as $file) {
87 echo "Processing $file\n";
91 function mapIaImage($iaImages, $imageUrl)
93 $newUrl = findIaImage($iaImages, $imageUrl);
94 if ($newUrl !== $imageUrl) {
97 'map-game-images.ia.csv',
98 $imageUrl . ',' . $newUrl . "\n",
103 //not in internet archive
104 echo " Missing in IA: $imageUrl\n";