ぼっちサーバを抽出するだけなら1行なんだけど割合を計算するのにRubyを使いたくなっちゃうんだよな
$ awk -F\\t '{if($4==1){print $2}}' apstat-20231003.tsv | sort | uniq -c | sort -nr | head
3048 mastodon
1139 wordpress
430 writefreely
395 pleroma
374 gotosocial
255 owncast
193 akkoma
124 pixelfed
89 lemmy
48 aoderelay
全サンプル。*はサーバ名を教えてくれなかったもの (DNSが無かったりHTTPステータスが200じゃなかったものを含みます)
$ awk -F\\t '{print $2}' apstat-20231003.tsv | sort | uniq -c | sort -nr | head
29945 *
11499 mastodon
2222 wordpress
1167 pleroma
1148 misskey
1132 peertube
1050 lemmy
648 gotosocial
609 writefreely
590 akkoma
@zundan@mastodon.zunda.ninja ああ、主に $4==1
の部分をどう判定してるかが気になってました。たとえば、内の鯖ってお一人ですけど、ユーザ数は 3 なんですよね (Misskey / Firefish はバーチャルユーザが生えるので)
@zundan@mastodon.zunda.ninja users_active_month ($5
) で見るといいのかな?
@me @me 僕のスクリプトではnodeinfo 2.0のusage.users.totalを参照してます
https://gist.github.com/zunda/f566e2bb85ca0616d351139363274ec5#file-crawl-activitypub-rb-L84
そちらだとactiveMonthが1になりますねー
$ curl -s https://ff.mizunashi.work/nodeinfo/2.0 | jq .usage.users
{
"total": 3,
"activeHalfyear": 1,
"activeMonth": 1
}
サーバによってはactiveMonthを公開していないのが悩ましいところです
@me どちらかが1ならぼっちと解釈するのもありかもですね
$ awk -F\\t '{if($4==1 || $5==1){print $2}}' apstat-20231003.tsv | sort | uniq -c | sort -nr | head
5060 mastodon
1139 wordpress
600 pleroma
434 writefreely
431 lemmy
374 gotosocial
365 peertube
276 akkoma
255 owncast
201 pixelfed