3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

消えていく官報の記録をつなぐ、アーカイブサイトをNext.jsで作りました

3
Posted at

2025年4月1日に官報の発行に関する法律が施行され、官報は内閣府の官報発行サイトで提供されるようになりました。この新サイトでは、2025年4月1日以降に発行された官報PDFは、直近90日分のみが提供される運用となっており、90日を経過したPDFは順次非公開となります。

作ったもの

官報発行サイトから発行された官報PDFを保存し、非営利でアーカイブ公開することにしました。

  • 2025年4月1日以降の官報PDFを日ごとにダウンロードできる
  • 年単位でまとめて取得したい場合は、kanpo-2025 などのGitHubリポジトリをCloneして利用可能

この公開にあたり内閣府大臣官房総務課官報制度係に問い合わせ、再配布に関する制限やガイドラインは存在しない旨の回答をいただきました。

📚 技術的なこと

サイトはNext.jsでビルドしたものをGitHub Pagesにデプロイしているだけです。デザインとかはほとんどAIにやってもらったので詳細はあんまりちゃんとみていません。PRは歓迎します。

PDFファイルは非公開のリポジトリで日次クロールしており、 kanpo-{YEAR} のリポジトリをPDFのストレージとして保存しています。このリポジトリは1年毎に新規作成されます。理由としてGitリポジトリは5GB未満にすることが推奨されているためです。1日あたり約20MB×平日分約250日と仮定するとだいたいそのくらいになる想定です。PDFのサイズが異様にでかいのはテキスト化できないように画像化しているためと考えられます。まぁ多少超えても多分大丈夫でしょう。

Webサイトではこのストレージ用リポジトリに配置されたファイルをGitHub APIを介して表示しているだけです。ただ、GitHub APIは非認証だとレートリミットが厳しいのでCloudflare workerでキャッシュしています。

クローラリポジトリは公開していません。理由はリポジトリが無数にクローンされると官報発行サイトに負荷をかける恐れがあるためです。これは私の本意ではありません。

ちなみに自動運用を開始した7/25までの分は私が手動で手元に取ってきたものを配置しています。官報発行サイトの作りはシンプルなのでスクレイピング自体は非常に容易でした。

なお検索機能は実装しておらず、今後の追加予定もありません。PDF解析しようとするとコストがかかってしまうためです。

なお、クローラは数日分のPDFをまとめて取得する(未登録のものだけPUSHする)ため、もし官報サイトの不具合か何かで当日のPDFの取得が漏れていても翌日まで待てば反映されると思います。ただ、官報サイトのレイアウトが変わって永続的に取得できていないときはIssueかなにかで教えて下さい。

なぜ作ったのか?

官報は「法令の公示」という極めて公共性の高い記録物です。

しかしながら、2025年4月以降に発行された官報は90日を超えると非公開となるため、長期的な参照が困難になります。これは国民の知る権利や法令遵守にとって障害になりかねません。

そこで、非営利・個人の立場から記録を保存・提供するアーカイブを作成しました。

⚠️ 注意事項

  • 本プロジェクトは政府機関や国立印刷局とは無関係の個人、あるいは有志が運営する非公式アーカイブです

  • 官報には個人情報が記載される場合がありますが、これは法令に基づく公示情報です。二次利用には十分ご配慮ください

  • 掲載内容の利用により生じたいかなる損害についても、当方では責任を負いかねます

  • 最新の官報は 公式サイト をご確認ください

🙌 最後に

このプロジェクトは、公共情報の継続的なアクセス性を担保するための取り組みです。同様のアーカイブが他にも出てくることは歓迎しますし、関心のある方はGitHubでぜひIssueやPRをお寄せください。

有志の方の協力もお待ちしています。

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?