コードで語るマニフェスト:行政データはこう直せば使える!

どうも〜おかむーです!今日はちょっとエンジニアっぽい話をしますよ〜
- 정부·지자체 데이터가 PDF에 갇혀 있다면 재사용이 불가능하다
- 기계가 읽을 수 있는 CSV/JSON, 공식 API와 스키마가 핵심이다
- 실무적으로 가능한 마이그레이션 방법과 예제 코드를 제안한다
結論
요약하면, 정부·지자체가 "データ公開"라며 올리는 것의 상당수가 사람용 PDF에 멈춰 있다. これ見てくださいよ—Digital庁와 内閣官房의 문서에서도 "機械可読性を確保"하라고 명시돼 있지만(参照: digital.go.jp, cas.go.jp)、現場ではPDF·Word 중심의 공개가 계속된다. エンジニア的に言うと、CSV/JSON + OpenAPI 한 줄이면 해결되는 문제다. 要するに、公開포맷·API·스키마를 갖추면 데이터의 가치가 즉시 올라간다ということです。
レポート本文
現状観察:どこが問題か
- PDF 중심 공개
- APIの欠如と散逸するデータカタログ
- KPIと実績の乖離を検証しにくい
技術的評価ポイント
- フォーマット
- 要件: UTF-8, 明確なカラム名, タイムスタンプのISOフォーマット
- API
- メタデータとカタログ
- データ品質管理
具体的改善案(短期〜中期ロードマップ)
- 既存PDFの源データがあるならCSVで同時公開。手作業でいいからまずは機械可読に。
- OpenAPIを定義してGET /datasets/{id}/records で取得できるように。
- スキーマがあれば民間も検証ツールをすぐ作れる。
- KPI名、目標値、実績、期間、算出式をCSV/JSONで公開。これで自動ダッシュボードが可能。要するに、"KPIメタデータ"をAPI化してほしいんです。
- GitHub Actions等でCSV/JSONを検証。スキーマ違反や欠損発見でPR阻止。
コード例:CSVが無ければPDFから救い出す(Python)
以下は実務でよく使うパターン。まずAPI/CSVがあるか確かめて、無ければPDF抽出にフォールバックするスニペット。
import requests
import pandas as pd
from io import BytesIO
pdfminer / tabula-py 等が必要
def fetch_csv(url):
r = requests.get(url)
if r.ok and 'text/csv' in r.headers.get('Content-Type',''):
return pd.read_csv(BytesIO(r.content))
return None
def fetch_pdf_table(url):
# ローカルにtabulaインストールしておくこと
import tabula
dfs = tabula.read_pdf(url, pages='all', multiple_tables=True)
# 単純な結合戦略
return pd.concat(dfs, ignore_index=True)
csv_url = 'https://example.gov.jp/data.csv'
df = fetch_csv(csv_url)
if df is None:
print('CSV 없네... PDFから抽出するよ')
df = fetch_pdf_table('https://example.gov.jp/report.pdf')
print(df.head())
要するに、まずはAPI一本を期待するけど、現場ではこのフォールバックが必須なんです。
KPIと実績のギャップ分析(手順)
これをやるだけで、政策評価がぐっと楽になる!山口県の報告書のようなPDFベースの実績表は、構造化されれば二次利用で価値が爆上がりします。
オープンデータ活用の可能性
- 民間のアプリやダッシュボードが生まれる
- 研究者によるエビデンスベースの政策提案が増える
- データ連結で新しいサービス(行政手続きの自動化・財政モニタリング等)が実現
まとめ
- 政府·自治体の資料、これ見てくださいよ—PDFに閉じ込めるのはもうやめよう!
- まずはCSV/JSONの同時公開、次にOpenAPIとスキーマ公開、最後にCIで品質担保するのが現実的な道筋
- 小さな改善(CSV一つ、OpenAPI一つ)が市民・企業にとって大きな価値になる
おかむーから一言
テクノロジーで社会をアップデートするのは夢物語じゃないです!まずはデータを機械が読める形にして、API一本作りましょう。やればすぐ変わります!
정보 출처
- https://www.zhihu.com/question/290714454
- https://www.digital.go.jp/assets/contents/node/basic_page/field_ref_resources/256dcba6-b936-4031-b88d-3abb27e27f9b/f7af0ca4/20260331_meeting_executive_outline_06.pdf
- https://zhidao.baidu.com/question/444492165.html
- https://www.cas.go.jp/jp/seisaku/digital_gyozaikaikaku/data8/data8_siryou1.pdf
- https://www.zhihu.com/question/38923279
- https://ja.wikipedia.org/wiki/%E3%83%87%E3%82%B8%E3%82%BF%E3%83%AB
- https://www.chisou.go.jp/sousei/pdf/r5_guideline-checkaction.pdf
- https://www.digital.go.jp/
- https://www.pref.yamaguchi.lg.jp/uploaded/attachment/160746.pdf
- https://e-words.jp/w/%E3%83%87%E3%82%B8%E3%82%BF%E3%83%AB.html
- https://metidx-gov.note.jp/n/n9468573c213b
- https://zenn.dev/govtechtokyo/articles/b65dc687e50918
공유하기
관련 리포트

コードで語るマニフェスト:自治体データとシステムをエンジニア視点で検証する
自治体データはPDFやUIに閉じがち。API-firstとJSON Schemaで再利用性を高め、ガバメントクラウドへ移行する実務ロードマップを提示します。

コードで語るマニフェスト:日本政府データの現場から見る技術検証
政府データは可視化が進むも機械可読性不足が課題。CSV/JSON/API、スキーマ、ID統一で政策検証を自動化しよう。

코드로 읽는 마니페스토: 일본 정부 데이터와 시스템을 엔지니어 관점에서 후벼파기
일본 정부 데이터의 PDF·API·메타데이터 문제를 엔지니어 관점에서 분석하고, 실무 가능한 개선안을 코드 예시와 함께 제시합니다。