Skip to content

Instantly share code, notes, and snippets.

@tcz
Last active July 26, 2016 02:14
Show Gist options
  • Save tcz/7412631 to your computer and use it in GitHub Desktop.
Save tcz/7412631 to your computer and use it in GitHub Desktop.
Copy Hypem favorites to Spotify
<?php
if ($argc !== 2)
{
die("Usage: php {$argv[0]} hypem_user_name\n\n");
}
$user = $argv[1];
$page = 1;
$all_songs = array();
do
{
$json = @file_get_contents("http://hypem.com/playlist/loved/$user/json/$page/data.js");
$object = json_decode($json, true);
$page_songs = array();
$index = 0;
while (isset($object[$index]))
{
$page_songs[] = $object[$index]['artist'] . " " . $object[$index]['title'];
$index++;
}
$page++;
$all_songs = array_merge($all_songs, $page_songs);
} while(count($page_songs));
$spotify_hrefs = array();
foreach ($all_songs as $song)
{
$json = @file_get_contents("https://api.spotify.com/v1/search?type=track&q=".urlencode($song));
$object = json_decode($json, true);
if (empty($object["tracks"]["items"]))
{
echo "$song not found.\n";
continue;
}
$spotify_hrefs[] = $object["tracks"]["items"][0]["uri"];
}
echo "\nFound " . count($spotify_hrefs) . " songs out of " . count($all_songs) . ".\n\n";
echo "1. Select a playlist in Spotify\n2. Copy and paste the following:\n\n";
echo implode("\n", $spotify_hrefs);
echo "\n\n";
@oradcliffe
Copy link

Is there a way to get this to work with Google Play?

@mshelman12
Copy link

Can someone please give a step by step here? Would love to be able do this..

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment