AppleScriptでnote APIを叩いて調べる
noteのWebサービスは非公開のREST APIが用意されているため、AppleScriptから呼び出して結果を得ることが可能です。
割と簡単にREST APIを呼べるAppleScript
AppleScriptの標準コマンドにREST API呼び出しの専用コマンドはないので、いくつかの外部機能を用いて実行することになります。
(1)shellのcurlコマンド
curlを「do shell script」コマンド経由で呼び出す方法です。さまざまなWebサービスの開発者向けのREST API解説ページではcurlコマンドの記述例が書かれているので、とりあえず動作確認のために書いて実行してみる感じです。ただし、細かいチューニングができません。
(2)Cocoaの各種機能を呼び出す
macOSの内部APIであるCocoaの各種機能を呼び出して、こまかいコントロールが行えます。速度もcurlコマンドより速く、データをgzip圧縮するといった処理を問題なく行えます。

ユーザーアカウント情報を取り出してわかること
REST API経由で情報を取り出してみて、1ページあたり20人のユーザー情報が10万ページ返ってくることがわかりました。ただ、10万という数字があまりにもキレイすぎるので、
・本当に20x10万=200万人もユーザーがいる
・本当は20x10万=200万人もユーザーがいるわけではないので、上限数は決め打ちであって、このパラメータを信じてはいけない
だったら、後者を信じたくなります。
10万ページ分ユーザー情報を取り出すの?
単なる実験としてユーザー情報を取得してみたので、本当に10万ページ分を取り出す意図はありません(かったるい)。
テストで少数取り出して、データ内容の傾向であるとか、削除ユーザーアカウントの状態を見たり、本当に全員分取り出すとどのぐらいの時間がかかるか基礎調査を行なってみたところです。

取り出してデータベース上でかき回すと、いくらか傾向が見えてくるかもしれません。
ただ、10万ページ分REST API経由で取り出すのにどの程度の時間がかかるのか……
絶対にWebサーバー側に「ねずみ返し」機構がついているはずで、連続してデータ要求すると、結果を返さなくなる可能性が高いです。いきなり10万ページ分をリクエストしても返ってこないでしょう。
REST API経由でいろいろ調べてみて、最終的には「有料記事を書いているユーザー数」「有料記事を作成しているユーザーの無料/有料記事の比率」「有料記事のカテゴリごとの価格帯分布」「売れている有料記事のアカウント/記事タイトル/長さ」などについて、調べてみたいところです。
ただ、2,000ユーザー分を取り出すのに数十秒かかっているので、全ユーザー情報を取り出すだけでも相当の時間がかかるので、絶対に途中で飽きそうです。あと、有志によるREST APIの資料が正しくない箇所もあって、実際にコードを書いて動かしてみないと分からないこともいろいろありました。
