Qiita の記事を markdown で一括取得するコマンド
Qiita 記事のURLの最後に.mdをつけることで、記事の markdown を表示させることができます。
たとえば、以下の記事の markdown は以下のリンクになります。
上記を利用して、自分が投稿した記事の markdown を一括で取得したいと思います。
前提条件
- markdown ファイル名は
記事タイトル.md - 記事のタイトルに
/が入っていないこと - 以下のコマンドがインストールされていること
jqnkf
コマンド
USERNAMEに Qiita ユーザー名を指定します。- 投稿記事が 100 個以上の場合は、
&page=2を使って繰り返し実行すれば全記事が取得できそうです。
USERNAME=yumenomatayume # ユーザー名を指定
articles=$(curl -s "https://qiita.com/api/v2//users/${USERNAME}/items?per_page=100" | jq -r ".[].url")
for article in $articles;do
file=$(echo "$(curl -s $article.md | grep '^title:' | sed -E 's/^title: //g').md" | nkf -w --url-input)
curl -s $article.md > "$file"
done
GitHub Actions に設定する
以上を踏まえて、Qiita 記事を自動で取得できるリポジトリを作りました。
GitHub Actions で、1 時間ごとにコマンドを実行するようにしています。