ストック数・コメント数・ツイート数・はてぶ数・いいね数を取得する
php
<?php
const USERNAME = "suin";
const COUNT = 100;
error_reporting(-1);
ini_set('display_errors', 1);
$filename = 'https://qiita.com/api/v1/users/'.USERNAME.'/items?per_page='.COUNT;
$contents = file_get_contents($filename);
$items = json_decode($contents, 1);
$items = array_map(function (array $item) {
    return [
        'url' => $item['url'],
        'title' => $item['title'],
        'created_at' => (new DateTime($item['created_at']))->format('Y-m-d'),
			'stock_count' => $item['stock_count'],
			'comment_count' => $item['comment_count'],
			'content_length' => mb_strlen($item['raw_body'], 'UTF-8'),
    ];
}, $items);
usort($items, function ($item1, $item2) {
    $created1 = new DateTime($item1['created_at']);
    $created2 = new DateTime($item2['created_at']);
    return ($created1 >= $created2) ? 1 : 0;
});
echo "created: ", date('Y-m-d H:i:s'), PHP_EOL;
echo implode("\t", [
	"date",
	"stocks",
	"comments",
	"hatena",
	"tweets",
	"likes",
	"chars",
	"url",
	"title",
]), PHP_EOL;
foreach ($items as $item) {
	$fb = 0;
	$hateb = 0;
	$tweets = 0;
	$fb = get_fb($item['url']);
	$hateb = get_hatena_count($item['url']);
	$tweets = get_tweets($item['url']);
	
	echo implode("\t", [
		$item['created_at'],
		$item['stock_count'],
		$item['comment_count'],
		$hateb,
		$tweets,
		$fb,
		$item['content_length'],
		$item['url'],
		$item['title'],
	]), PHP_EOL;
}
function get_hatena_count($url)
{
	$url = 'http://api.b.st-hatena.com/entry.count?url='.urlencode($url);
	return file_get_contents($url);
}
function get_tweets($url)
{
	$url = 'http://urls.api.twitter.com/1/urls/count.json?url='.urlencode($url);
	$json = file_get_contents($url);
	return json_decode($json)->count;
}
function get_fb($url)
{
	$url = 'http://graph.facebook.com/?id='.($url);
	$json = file_get_contents($url);
	$data = array_merge(['shares' => 0], json_decode($json, true));
	return $data['shares'];
}
ページビューを取得する
PVはAPIで取れないので、QiitaにログインしChromeのインスペクタ上で実行する
coffeescript
username = "suin"
count = 100
getQiitaItems = (username) ->
	console.log(1)
	$.ajax
		url: "https://qiita.com/api/v1/users/#{username}/items?per_page=#{count}"
		success: (items)->
			getPV(items)
		dataType: "json"
getPV = (items, result = "") ->
	if items.length is 0
		console.log("Result:" + result)
		return
	item = items.shift()
	console.log("fetch(#{items.length}): #{item.url}...")
	$.get item.url, (data)->
		pv = $(data).find('li.view-count').text().trim().split(/\s/)[0]
		result = result + "\n" + item.url + "\t" + pv
		getPV(items, result) 
getQiitaItems(username)
↓ コンパイル後JS
js
// Generated by CoffeeScript 1.6.3
(function() {
  var count, getPV, getQiitaItems, username;
  username = "suin";
  count = 100;
  getQiitaItems = function(username) {
    console.log(1);
    return $.ajax({
      url: "https://qiita.com/api/v1/users/" + username + "/items?per_page=" + count,
      success: function(items) {
        return getPV(items);
      },
      dataType: "json"
    });
  };
  getPV = function(items, result) {
    var item;
    if (result == null) {
      result = "";
    }
    if (items.length === 0) {
      console.log("Result:" + result);
      return;
    }
    item = items.shift();
    console.log("fetch(" + items.length + "): " + item.url + "...");
    return $.get(item.url, function(data) {
      var pv;
      pv = $(data).find('li.view-count').text().trim().split(/\s/)[0];
      result = result + "\n" + item.url + "\t" + pv;
      return getPV(items, result);
    });
  };
  getQiitaItems(username);
}).call(this);