見出し画像

自分のnote全記事情報を取得してみた【Python×noteAPI】

先日、「自分のnote記事を自動でTwitterに共有しよう!」という記事を作成、公開しました。

公開した記事は以下のマガジンにまとめています。

このマガジンでは、自動ツイートしたい内容をあらかじめGoogleスプレッドシートに用意しておき、定期的にスプレッドシートから記事データをランダムに読み込んでツイートする、というアプリケーションの作り方を紹介しています。
さて、この「記事情報スプレッドシート」ですが、記事が何百本とある人でも何とか簡単に作れないものかと少し考えてみました。

色々と調べてみたところ、noteには非公式ですがAPIが存在していることがわかりました。APIとはApplication Programming Interfaceの略で、外部プログラムからnoteデータにアクセスするための言わば窓口みたいなものです。

APIの例:
・noteユーザー情報
https://note.com/api/v2/creators/kawauso16

・記事一覧(1ページに6記事分?の情報)https://note.com/api/v2/creators/kawauso16/contents?kind=note&page=1


このAPIを使えば、記事ごとにタイトルとTwitter共有URLが取得できそうだったので、Pythonでさらっとプログラムを書いてみました。
なぜPythonにしたかというと、面倒な環境構築なしですぐにPythonが動かせるGoogleColaboratoryという便利なものがあるからです。いい時代ですね。

で、こんな感じで一覧取得できました。

テキスト投稿かつぶやき投稿か、有料記事か無料記事かなんかも取得できます

ここから先はExcelの文字列連結の要領で、
「name列」& " |かわうそ #note " & 「noteUrl」
を別シートに書き出してあげれば、

先頭の一行に文字列連結式を入れてあげれば、あとはオートフィルで一瞬で全行完成

目的の記事一覧を作成することができました。

この記事一覧データからランダムに1行選んで自動ツイートしているTwitterアカウントはこんな感じです。↓



noteのAPIは非公式なので、Googleで検索してもほとんど情報がありません。また、いつAPIの仕様が変更されたり使用できなくなったりしてもおかしくないため、作成したPythonのソースコードの公開は控えようと思っています。(Twitter自体が最近迷走してますしね。。。)
もし興味がある方は、コメントやクリエイターへの問い合わせで連絡ください。


いいなと思ったら応援しよう!

かわうそ 頂いたサポートは、クリエイターとしての活動費として使用させていただきます!