Contribution順Qiitaいいな〜ランキング

[Qiitaいいな〜ランキング](https://qiita.com/tag1216/items/b4ae76328989947ac216)という記事を見かけたので、これをContribution順にしてみました。
自分が全く使ってないので、他の人はどの程度なのかを見てみたかったというだけであって特に意味はありません。

Contribution数は2019/02/11時点のものですが、Contribution順位は[Qiitaのいろいろランキング2018](https://qiita.com/t_nakayama0714/items/865da4afde5e0600187c)からコピペしたものなので順位とContribution数が合っていない場合があります。

# 一覧

|ユーザ |いいね数 |Contribution数 |
|---|---:|---:|
|@jnchito |237 |43298 |
|@hirokidaichi |120 |42623 |
|@icoxfog417 |169 |33242 |
|@suin |1101 |29754 |
|@shu223 |780 |21966 |
|@mizchi |151 |21462 |
|@rana_kualu |1 |22174 |
|@mpyw |3776 |20969 |
|@opengl-8080 |1803 |20262 |
|@KeithYokoma |476 |19672 |
|@kenju |18 |19125 |
|@yuku_t |1441 |18786 |
|@awakia |431 |17176 |
|@mono0926 |4783 |15825 |
|@b4b4r07 |1739 |14993 |
|@cognitom |440 |14744 |
|@muran001 |204 |14310 |
|@edo_m18 |1037 |14345 |
|@koher |773 |14225 |
|@haminiku |110 |13986 |
|@zaru |443 |14098 |
|@kazunori279 |199 |12260 |
|@susieyy |1887 |12160 |
|@kenmatsu4 |411 |12326 |
|@appwatcher |148 |12006 |
|@shibukawa |355 |12230 |
|@takeharu |4 |11960 |
|@yimajo |1149 |11805 |
|@hshimo |152 |11175 |
|@ynakayama |487 |11126 |
|@kawasima |50 |11095 |
|@tadsan |2006 |10947 |
|@uasi |1455 |10746 |
|@hkusu |1060 |10510 |
|@kidach1 |325 |10486 |
|@poly_soft |714 |11158 |
|@tonkotsuboy_com |1049 |11239 |
|@joker1007 |394 |10214 |
|@Hironsan |203 |10406 |
|@tukiyo3 |1853 |10179 |
|@t_nakayama0714 |149 |10153 |
|@kazukichi |93 |9960 |
|@tag1216 |1472 |10372 |
|@usagimaru |1406 |9764 |
|@Quramy |1187 |9727 |
|@Qiita |33 |9567 |
|@youwht |434 |9856 |
|@kawaz |444 |9091 |
|@zembutsu |73 |9092 |
|@howdy39 |1123 |9106 |
|@drken |353 |10912 |
|@sion_cojp |153 |8804 |
|@vvakame |902 |8879 |
|@y_hokkey |826 |8787 |
|@amay077 |1337 |8760 |
|@okappy |269 |8521 |
|@tbpgr |906 |8657 |
|@jabba |80 |8661 |
|@n0bisuke |4 |8231 |
|@TakahikoKawasaki |10 |8654 |
|@syui |723 |7960 |
|@kaiinui |278 |7670 |
|@yuya_presto |987 |7641 |
|@jacksuzuki |94 |7648 |
|@tatesuke |214 |7594 |
|@tmknom |233 |7590 |
|@Jxck_ |4 |7494 |
|@ryuichi1208 |40 |10037 |
|@shizuma |326 |7425 |
|@gogotanaka |102 |7086 |
|@mochizukikotaro |433 |7012 |
|@tenntenn |828 |7005 |
|@zaburo |12 |7103 |
|@okunokentaro |789 |6775 |
|@ukiuni@github |38 |6803 |
|@disc99 |45 |6821 |
|@pugiemonn |1214 |6858 |
|@terrierscript |1538 |6858 |
|@nonbiri15 |63 |6644 |
|@hik0107 |47 |6578 |
|@yaotti |1210 |6415 |
|@nekoneko-wanwan |66 |6454 |
|@takahirom |799 |6481 |
|@shuntaro_tamura |182 |6509 |
|@magicant |640 |6354 |
|@alt |6927 |6519 |
|@Ted-HM |267 |6437 |
|@hidekuro |232 |6204 |
|@r7kamura |70 |6110 |
|@koba04 |47 |6085 |
|@daxanya1 |144 |6013 |
|@koogawa |1578 |6045 |
|@ryounagaoka |73 |6040 |
|@toshihirock |139 |6103 |
|@voluntas |767 |5854 |
|@soarflat |132 |6307 |
|@colorrabbit |427 |5795 |
|@k0kubun |394 |5810 |
|@akameco |401 |5746 |
|@yoshizaki_kkgk |188 |5771 |



意外といいね数0はいませんでした。

しかし上位だからといって必ずしもいいね数が多いわけではないですね。




# おまけ：ソースコード

所詮使い捨てのコードなので、何も考えずに上から順にばばばと書いていっただけです。
間違っても仕事でこんな書き方をしてはいけないぞ。

```php
$savedata = [];
const LIKE_URL = 'https://qiita.com/%1$s/like';

// ユーザ一覧
$users = [ /* 省略 */ ];

// 繰り返し
foreach ($users as $user) {
	$userdata = [];

    // URL
    $url = sprintf(LIKE_URL, $user);
    // 取得
	$htmlMoto = file_get_contents($url);

	// Contributions
	$strStart = 'contributions"><span class="userActivityChart_statCount">';
	$strTo = '</span>';
	$contributions = substr($htmlMoto, strpos($htmlMoto, $strStart)+ strlen($strStart));
	$userdata['contributions'] = substr($contributions, 0, strpos($contributions, $strTo));

    // 最終ページのページ数
    $strTo = '"><i class="fa fa-angle-double-right">';
    $html = substr($htmlMoto, 0, strpos($htmlMoto, $strTo));
    if (!$html) {
        // 1ページしかない
        $userdata['iine'] = substr_count($htmlMoto, 'article class="media ItemLink"');
    } else {
        // 2ページ目以降がある
        $strStart = 'page=';
        $html = substr($html, strrpos($html, $strStart) + strlen($strStart));
        $lastpage = (int) $html;

        // いいね最終ページを取得
        $url = sprintf(LIKE_URL, $user) . '?page=' . $lastpage;
        $html = file_get_contents($url);

        // 最終ページのいいね数
        $lastiine = substr_count($html, 'article class="media ItemLink"');

        // 合計はページ数*20+最終ページのいいね数
        $userdata['iine'] = ($lastpage - 1) * 20 + $lastiine;
    }

    $savedata[$user] = $userdata;
}

// 終了
file_put_contents('ranking.json', json_encode($savedata));
```

いくら使い捨てとはいえ手抜き過ぎるだろ。
せめてlikeとiineくらい統一しろと。