ながらくTwitterで横浜FC関連のニュースをTweetするbotを運営していたが、APIが使用できなくなってしまい、残念ながら2023年の7月に運用を停止した。

その後、横浜FC botはMastodonに場所を移し、引き続き運用している。

✍️ コンテンツの所有者はだれなのかにも書いたが、自分のコンテンツは可能なかぎり自分がコントロールできる場所へ置くほうが良いということが身にしみてわかった。

まぁ、横浜FC botの場合はただのニュースリンクに過ぎないが、たんたんと記録し続けることに価値があると思うし、なにより古いニュースの見出しを眺めるだけでも楽しいので、自動的にニュースリンクをアーカイブし、Webページとして保存するサイトを作成した。

Image from Gyazo

このサイトでは、横浜FC関連のニュースリンクを一覧にしたWebページを自動的に作成している。ニュースは月単位でまとめ、その月のトピックスを把握できるよう見出しからワードクラウドを生成し、アイキャッチ画像としている。

ニュースリンクのページ以外に、以下のような試合のサマリページがあるのだが、こちらは自動化できない部分があり、多少の手作業は残っているものの、基本的にはメンテナンスフリーで更新される。

仕組みは以下の感じで、濃い色の箱が自作した部分。こういった作業の自動化はとても楽しい。手段が目的化しかねないほど好きだな。

flowchart TD
    subgraph Mastodon bot
    A[(RSS)] -->|一定時間ごとに読み込み| B(横浜FC Bot):::ownClass
    B --> |APIでPost| C[Mastodon Server]
    C -->|出力| D[(RSS)]
    end
    subgraph コンテンツ作成
    D -->|一定時間ごとに読み込み| E(ページ生成 Bot):::ownClass
    E -->|1.ページ生成| F[(Markdown)]
    E -->|2.起動| G(WordCloud生成ツール):::ownClass
    F -->|3.読み込み| G
    G -->|4.WordCloud生成| H[(PNGファイル)]
    end
    subgraph ページ生成ー配信
    E -->|5.add-commit-push| I[GitHub]
    I -->|起動| I1[Github Actions]
    I1 -->|6.起動| J[Hugo]
    J -->|7.ページ生成| K[(Webページ)]
    K -->|8.読み込み| I1
    I1 -->|9.配信| L[Github pages]
    end
    classDef ownClass fill:#aaf,stroke:#333,stroke-width:4px