用代码审视政府数据:从 PDF 到 API 的那条路

大家好,我是おかむー!今天来聊点既技术又政策的东西——用工程师的眼光,看政府和自治体的数据发布现状,顺手给出实操级的改进建议~
- 这篇文章用“代码化的宣言(コードで語るマニフェスト)”角度审视政府数据
- 关注点在:机器可读性(PDF vs CSV/JSON)、API 有无、自治体系统标准化进度
- 给出可复用的工程实现建议与代码示例,方便立刻上手
結論
结论很直接:法规、方针和意图已经在推进(见 Digital Agency / 総務省 的资料),但落地还卡在“数据格式”和“运维规范”上。工程师角度来说,这些都是 API+开放格式+元数据的工程问题,能被技术方案化、版本化、自动化。要抓的三件事:1) 机器可读为先、2) 统一 schema 与元数据(DCAT/JSON Schema)、3) 将自治体遗留系统纳入可治理的运维流程。
报告正文
背景与证据
- これ見てくださいよ:Digital Agency 在 2026/03/31 决定了“行政データにおける機械可読性に関するルール”(PDF/概要可见 digital.go.jp),这是政策层面推动机器可读数据的重要信号(来源:https://www.digital.go.jp/.../20260331_meeting_executive_outline_06.pdf)。
- 総務省也在推进自治体情報システムの標準化(https://www.soumu.go.jp/...),目标是减少個別システムの乱立と運用コスト。
现在的问题点(工程师视角)
1) PDF 优先还是 CSV/JSON?
- 许多行政统计、補助事業や報告書仍以 PDF/Word 为主。要するに,就是人間向けのフォーマットで、機械が直接喰えないんですよね。PDF 里埋まった表はスクレイピング前提になり、信頼性が落ちる。
2) API 的缺失或设计不统一
- 一些中央統計(例如 e-Stat)提供 API,但地方自治体提供の API 整体まだまだバラバラ。認証方式、レスポンスフォーマット、バージョニングが統一されていないと開発コストが跳ね上がる。
3) メタデータ不足
- 公開データにライセンスやカラム定義、更新間隔が無いことが多い。要するに、使う側が前提確認しづらいんです。
数据与政策目标的差距
- 政府在政策文件里明确了“機械可読性を担保する”方向(Digital Agency 2026 年文件),但落地速度受限于自治体のシステム老朽化・運用人材不足・予算配分。
- 结果就是:声明有,但实际可用的结构化 API & 標準 schema 数量远小于需求。
技術的検証(実践的アプローチ)
- 如果数据只有 PDF:优先做元データ(data catalog)并计划结构化转换。
- 绿色通道:先发布 CSV + JSON Schema,再做完美 API。这降低了前期成本。
コード例(Python: 从 CSV 到简单 JSON API)
# 简易示例:把自治体CSV转换成标准化JSON并输出
import pandas as pd
from flask import Flask, jsonify
app = Flask(__name__)
df = pd.read_csv('local_data.csv')
简单清洗
df.columns = [c.strip() for c in df.columns]
@app.route('/api/v1/data')
def get_data():
# 分页示例
page = int(request.args.get('page', 1))
per = int(request.args.get('per', 100))
start = (page-1)*per
return jsonify({
'data': df.iloc[start:start+per].to_dict(orient='records'),
'meta': {'total': len(df)}
})
if __name__ == '__main__':
app.run()
設計上の推奨(短期・中期・長期)
- 短期(6-12ヶ月)
- 建立中央 data-catalog(DCAT)索引,标注 license 与更新频度。
- 中期(1-2年)
- 推动自治体核心系统向クラウド和标准化システム迁移(総務省的標準化計画)。
- 长期(2-5年)
- 建立自动化流水线:数据→ETL→Catalog→API→Monitoring(可观测的 SLA)。
具体的工程实践建议
- 使用 JSON Schema + OpenAPI 定义每一个公開 API 的契约。
- 对 CSV 添加 CSVW(CSV on the Web)或 schema.org 元数据,使其自描述。
- 采集日志与 SLA 指标(レイテンシ、エラー率、更新遅延)并公开 Dashboard,做到透明治理。
まとめ
- 政策层面的规则与方向在推进(参考 digital.go.jp 与 soumu.go.jp),但技术实施落差需要被工程化。
- 要点:先保障机器可读(CSV/JSON + Schema)、再做 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://www.zhihu.com/question/6430289390
- https://www.cas.go.jp/jp/seisaku/digital_gyozaikaikaku/kakusyoDX4/kakusyoDX4.html
- https://www.zhihu.com/question/38923279
- https://www.keiba.go.jp/
- https://www.digital.go.jp/policies/local_governments
- https://www.keiba.go.jp/KeibaWeb/TodayRaceInfo/TodayRaceInfoTop
- https://www.soumu.go.jp/menu_seisaku/chiho/jichitaijoho_system/index.html
- https://www.keiba.go.jp/live/
- https://ja.wikipedia.org/wiki/%E5%85%AC%E5%85%B1
- https://www.intec.co.jp/column/smartcity-08.html
- https://kotobank.jp/word/%E5%85%AC%E5%85%B1-494676
- https://www.digital.go.jp/resources/data_case_study_private
- https://imijiten.net/%e5%85%ac%e5%85%b1%e3%81%a8%e3%81%af%ef%bc%9f%e6%84%8f%e5%91%b3%e3%80%81%e9%a1%9e%e8%aa%9e%e3%80%81%e4%bd%bf%e3%81%84%e6%96%b9%e3%83%bb%e4%be%8b%e6%96%87%e3%82%92%e3%82%8f%e3%81%8b%e3%82%8a%e3%82%84/
相关报告

代码で語るマニフェスト:以香川县公共设施预约系统为例的技术与数据审视
以香川县公共设施预约系统为例,从API、数据格式与标准化角度检视自治体系统,给出可执行的技术改进方案与代码示例。

用代码说话的宣言:从机器可读性到API化,解读日本数字化政策的数据工程路径
从Digital庁到e-Stat,评估日本数位政策的数据交付形态,提出API化与工程化改进路线,附代码与验证示例。

コードで語るマニフェスト:日本政府データをエンジニア視点で検証する
政府のマニフェストをデータとコードで検証。PDF多用やAPI断片化を指摘し、e-StatやJapan Dashboardを例に具体的な改善案とコード例を提示します。