bit.lyを使って簡単にurlを短縮するやり方

前回同様、バイトでの業務に自動化できそうなところがあったので自動化してみたシリーズ。
まあ、twitterbotを作るだけなんだけどその際postするツイートにurlを取り込む必要があってちょいと苦労した。
色々やり方を模索する中でbit.lyが一番簡単そうだったからメモ用にまとめとく。(ちなみにPHPでやった)


1)まずは、bit.lyのサイトにアカウント登録をする。http://bitly.com/

2)ユーザーネームとAPI Keyを取得 http://bitly.com/a/your_api_key

3)http://api.bitly.com/v3/shortenAPI Keyなどのパラメーターをくっつけて投げるとJsonでデータが返ってくる

4)そのデータをjson_decode()すれば終わり。


例)

$url = '短縮したいURL';
$url_enc = urlencode($url);
$login='bit.lyのユーザーネーム';
$api_key='bit.lyのAPI Key';
$format='json';
$data=file_get_contents('http://api.bitly.com/v3/shorten?login='.$login.'&apiKey='.$api_key.'&longUrl='.$url_enc.'&format='.$format);

$decoded_data = json_decode($data);
$shotened_url = $decoded_data->{"data"}->{"url"};

/*
jsonの返り値
{
 "status_code": 200,
 "status_txt": "OK",
  "data": {
   "long_url": "http:\/\/razoku-explosion.fool.jp\/onalog\/rank.php"
   "url": "http:\/\/bit.ly\/YSB0KD",
   "hash": "YSB0KD",
   "global_hash": "YSB0KD",
   "new_hash": 0
 }
}
*/

返り値にはxmlも指定できたりするらしい。
その他、詳しいAPIなどはDocumentationをご覧あれ。

簡単簡単。
これでまたひとつバイトが楽になった。