はじめに
2024/04~2025/03(総投稿件数:53!)
私たち社畜は毎週何かしら投稿していましたが、簡単に集計してみたいと思います。
ランキング発表
いいね数
総いいね数:22!
ストック数
総ストック数:14!
閲覧数
総閲覧数:47,646!
順位 | 閲覧数 | 記事 |
---|---|---|
1 | 3,980 | ・210日目 DockerイメージをビルドしてECRにプッシュするまでの流れby社畜S |
2 | 3,565 | ・280日目 jQueryを使ったAjaxでイベント駆動型非同期処理を作ってみる社畜ママ |
3 | 3,335 | ・203日目 365日後に〇〇する社畜に新メンバー加入:社畜ママ |
4 | 1,779 | ・365日後に〇〇する社畜の成長日記 |
5 | 1,678 | ・14日目「if」と「try-catch」で揺れる社畜L |
6 | 1,388 | ・21日目 Lambdaについてまとめてみる社畜S |
7 | 1,357 | ・94日目 RDSのコスト削減についてまとめてみる社畜S |
8 | 1,344 | ・217日目 Amazon Lexについて学んだ社畜M |
9 | 1,333 | ・171日目 Laravel(PHP)でマイグレーションファイルを使いこなそう!by社畜♀ |
10 | 1,315 | ・66日目 先輩エンジニアに色々聞いてみた社畜S |
ざっくり総評
非同期処理やDockerなど、業務で触れる機会が比較的多そう、かつ初見で必ず詰まるであろうテーマのものが閲覧されやすかったり共感(いいね/ストック)を得やすいのかなといった感じでした。
一方、いいね/ストック数を獲得するのはなかなか難しいやと思いつつも、トータルの閲覧数自体は意外とあることにびっくり!同じような壁に当たっている方々の目に触れる機会があって光栄です
集計方法
ちなみに集計の方は、こちらの記事を参考に実施しました。
実行ファイル
上記記事を参考に最小限必要な部分を利用させて頂きました。
import requests
import json
import math
USER_ID = '自身のQiitaユーザ名'
PER_PAGE = 20
allViews = 0
allLikes = 0
allStocks = 0
headers = {"content-type": "application/json", 'Authorization': 'Bearer Qiitaから発行したアクセストークン'}
url = 'https://qiita.com/api/v2/users/' + USER_ID
res = requests.get(url, headers=headers)
json_qiita_info = res.json()
#投稿したQiita記事の数
items_count = json_qiita_info['items_count']
# Qiita APIは一回のリクエスト上限があるのでリクエスト数を分けるために定義
page = math.ceil(items_count / PER_PAGE)
print('|記事タイトル|いいね数|ストック数|View数|')
for i in range(page):
# リクエスト送ってそれぞれの記事の情報が含まれたjsonをぶち込む
url = 'https://qiita.com/api/v2/authenticated_user/items' + '?page=' + str(i + 1)
res = requests.get(url, headers=headers)
json_qiita_info = res.json()
for j in range(PER_PAGE):
try:
# IDをjsonから引っ張り出す
item_id = json_qiita_info[j]['id']
# リクエスト送って指定IDの記事のView数が含まれたjsonを取得
url = 'https://qiita.com/api/v2/items/' + str(item_id)
res = requests.get(url, headers=headers)
json_view = res.json()
# View数をjsonから引っ張り出し、加算代入して総View数とする
page_view = json_view['page_views_count']
allViews += page_view
# 総いいね数,ストック数を取得
allLikes += json_qiita_info[j]['likes_count']
allStocks += json_qiita_info[j]['stocks_count']
# タイトル、いいね数、ストック数、View数の順に表示
print('| ' + json_qiita_info[j]['title'] + ' | ' +
str(json_qiita_info[j]['likes_count']) + ' |' +
str(json_qiita_info[j]['stocks_count']) + ' |' +
str(page_view) + ' |')
# エラーが起きた時点で集計終了
except IndexError:
# 1記事あたりの平均いいね数/率,平均ストック数/率を取得
averageLikes = round(allLikes / items_count, 1)
averageLikesRate= round(allLikes / allViews * 100, 2)
averageStocks = round(allStocks / items_count, 1)
averageStocksRate= round(allStocks / allViews * 100, 2)
print('******************************')
print('総閲覧数:' + str(allViews))
print('総いいね数:' + str(allLikes))
print('平均いいね数:' + str(averageLikes))
print('平均いいね率:' + str(averageLikesRate) + '%')
print('総ストック数:' + str(allStocks))
print('平均ストック数:' + str(averageStocks))
print('平均ストック率:' + str(averageStocksRate) + '%')
print('******************************')
break
実行コマンド
コマンドプロンプトにて、実行ファイルのあるディレクトリで以下を実行します。
python 実行ファイル名.py
出力結果
(2025年3月24日時点)
変なのも混ざり込んでいるようですが、記事作成にはいろいろ試行錯誤があったものだとして勘定に入れています。
|記事タイトル|いいね数|ストック数|View数|
| 365日目 真の社畜となった僕たち | 0 |0 |87 |
| 341日目 Lambdaでコードを書いた社畜M | 0 |0 |522 |
| 334日目 「SOA」合格体験記by社畜S | 0 |0 |494 |
| 315日目 Flutterについて深堀してみる 社畜ママ | 0 |1 |349 |
| 308日目 初めてのVue.js + TypeScript + API 社畜♀ | 0 |0 |377 |
| 327日目 PHP(laravel)が分かってきた社畜L_part2 | 0 |0 |288 |
| 301日目 PHP(laravel)が分かってきた社畜L_part2__ | 0 |0 |55 |
| 294日目 Entity、Seed、Migrationについて簡単に説明する社畜M | 0 |0 |186 |
| 287日目 Terraformに慣れてきたので改めてまとめてみる by社畜S | 1 |1 |465 |
| 280日目 jQueryを使ったAjaxでイベント駆動型非同期処理を作ってみる 社畜ママ | 5 |3 |3565 |
| 267日目 SAA試験 ゲートウェイまとめ 社畜♀ | 0 |0 |663 |
| 274日目 PHP(laravel)が分かってきた社畜L_part1 | 1 |1 |1142 |
| 250日目 EC2のコストダウンを行った社畜M | 0 |1 |303 |
| 244日目 情報セキュリティマネジメント試験に合格した時の学習法by社畜S | 1 |0 |578 |
| 237日目 同期処理と非同期処理について理解する 社畜ママ | 1 |0 |400 |
| 231日目 AWSのサービス別まとめ 社畜♀ | 0 |0 |327 |
| 224日目 (やらかし)初めてシステム開発をした社畜L | 0 |0 |505 |
| 217日目 Amazon Lexについて学んだ社畜M | 2 |1 |1344 |
| 210日目 DockerイメージをビルドしてECRにプッシュするまでの流れby社畜S | 2 |2 |3980 |
| 203日目 365日後に〇〇する社畜に新メンバー加入:社畜ママ | 4 |2 |3335 |
| 197日目 APIの実装【準備編】(バックエンド) | 0 |0 |775 |
| 190日目 CloudFormationでAWSbackupを設定してみた 社畜L | 0 |0 |805 |
| 183日目 SAA勉強用サイトを比べてみた社畜M | 1 |0 |1180 |
| 178日目 基本情報技術者試験を受験した時の学習法をいまさらまとめてみるby社畜S | 1 |1 |763 |
| 171日目 Laravel(PHP)でマイグレーションファイルを使いこなそう! by社畜♀ | 1 |1 |1333 |
| 164日目 CloudWatchでEC2ログの管理したい(2/2) 社畜L | 0 |0 |758 |
| 157日目 VSCの便利な拡張機能を教える社畜M | 0 |0 |523 |
| 149日目 「DVA」合格体験記by社畜S | 1 |0 |1083 |
| 142日目 PHP特有の記号まとめ 社畜♀ | 1 |0 |665 |
| 135日目 CloudWatchでEC2ログの管理したい(1/2) 社畜L | 0 |0 |652 |
| 128日目 Gitを多用するようになった社畜M | 0 |0 |988 |
| 122日目 Terraformを触ってみた社畜S | 0 |0 |595 |
| 115日目 PowerShell・コマンドプロンプト・Ubuntuターミナルのコマンド差分まとめ by社畜♀ | 0 |0 |1058 |
| 108日目 前職を振り返る社畜L | 0 |0 |1061 |
| 101日目 TypeScriptがわからなかった社畜M | 0 |0 |765 |
| 94日目 RDSのコスト削減についてまとめてみる社畜S | 0 |0 |1357 |
| 94日目 RDSのコスト削減についてまとめてみる社畜S | 0 |0 |16 |
| 87日目 365日後に〇〇する社畜に新メンバー加入:社畜♀ | 0 |0 |437 |
| 80日目 CloudFormationを触り始めた社畜L | 0 |0 |473 |
| 74日目 WorkSpacesを触ってみた社畜M | 0 |0 |875 |
| 66日目 先輩エンジニアに色々聞いてみた社畜S | 0 |0 |1315 |
| 66日目 先輩エンジニアに色々聞いてみた社畜S | 0 |0 |27 |
| 59日目 AWSを使った字幕付けをしてみた社畜L | 0 |0 |924 |
| 52日目 WorkSpaceについて説明する社畜M | 0 |0 |814 |
| 43日目 SAAに挑んだ社畜S | 0 |0 |1250 |
| XX日目 SAAに挑んだ社畜S | 0 |0 |16 |
| 36日目 ECSについてまとめてみた社畜L | 0 |0 |901 |
| 36日目 ECSについてまとめてみた社畜L | 0 |0 |16 |
| 29日目 EC2についてまとめてみる社畜M | 0 |0 |1184 |
| 21日目 Lambdaについてまとめてみる社畜S | 0 |0 |1388 |
| 14日目「if」と「try-catch」で揺れる社畜L | 0 |0 |1678 |
| 7日目「よく使うプログラム言語」について紹介する社畜M | 0 |0 |1227 |
| 365 日後に〇〇する社畜の成長日記 | 0 |0 |1779 |
******************************
総閲覧数:47646
総いいね数:22
平均いいね数:0.5
平均いいね率:0.05%
総ストック数:14
平均ストック数:0.3
平均ストック率:0.03%
******************************