国会会議録検索システムのAPIで「論点ごとの国会トラッカー」を作る——語で集めて、質疑と答弁を機械的に分ける
ニュースやXで話題になった論点について、「国会で誰が取り上げ、政府は何と答えたか」を調べたいことがあります。国立国会図書館の国会会議録検索システムにはAPIがあり、発言を語で検索して、日付・会議名・話者・本文を機械的に取り出せます。
これを使って、論点ごとに全国の国会議員の質疑と政府答弁を集めて並べる「国会トラッカー」を作りました。いま44本あります。たとえば次のようなページです。
- 日本版DBSとは|いつから・対象・国会答弁
- 子ども・子育て支援金はいくら?国会答弁
- 罹災証明書とは|応急修理と国会の議論
- 育休の業務代替とは|手当の助成と国会答弁
- OTC類似薬の保険給付見直し|負担と国会答弁
一覧は 国会トラッカー にあります。
仕組み
- 論点ごとに、検索する語を決める(例: 日本版DBSなら「日本版DBS」「こども性暴力防止法」「児童対象性暴力」)
- APIの
speechエンドポイントで、2010年以降の発言を語ごとに全件取る - 同じ発言が複数の語で当たるので、発言IDで重ねて1件にする
- 話者の表記から「質疑(議員)」「答弁(大臣・政府参考人)」「委員長」「参考人」に分ける
- SQLiteに入れて、PHP1枚で論点ページを出す。毎日、新しい会議録を取り直す
語に空白を入れると「両方を含む発言だけ」になります。たとえば「自衛官 充足率」は、自衛官と充足率の両方を含む発言だけを集めます。語1つだと関係の薄い発言まで入るので、この指定がいちばん効きました。
分け方でつまずいたところ
- 全角の英字: 会議録では「DBS」「AIエージェント」のように英字が全角で書かれています。半角の「DBS」だけで検索すると取りこぼすので、両方の表記を語に入れます
- 参考人は議員ではない: 委員会に呼ばれた有識者の「参考人」を議員の質疑に数えると、「取り上げた議員」が水増しされます。「政府参考人」は答弁側です。この2つを取り違えると、政府の審議官が参考人に化けます
- 会議録の見出し: 各会議の先頭にある「会議録情報」は話者ではないので、発言から除きます
数えると分かること
集めた数字だけで、ニュースの見え方が変わります。
- 子ども・子育て支援金: 質疑183件。岸田総理(当時)は2024年の本会議で「全体として実質的な負担が生じないこととしております」と答弁し、政府は令和10年度に「加入者一人当たり月五百円弱」と説明しています
- 罹災証明書: 質疑398件。「先に自分で業者に頼むと応急修理の対象外になる」という声については、2019年の衆議院災害対策特別委員会で、政府が「まだ支払いに至っていない場合」は「契約の変更等が可能であれば応急修理の対象として差し支えない」と答えていました
- 日本版DBS: 下着の窃盗やストーカーが確認の対象外になった理由を、政府は2024年の審議で答弁しています。法の附則には、施行後3年をめどに対象の範囲を含めて検討する規定があります
「国会で議論されていない」ことも数字で出ます。印旛沼が国会で出てきた37件のうち、堤防・治水・浸水に触れた発言は0件でした。
Xの返信で使う
話題の投稿に、会議録の数字とトラッカーのURLを添えて返信すると、人が来ます。9月29日には、育休の業務代替についての返信1本から、3時間ほどで309人がトラッカーを見に来ました。
ただ、ほとんどの人は1ページで帰ります。2ページ目へ進んだのは3%でした。そこで、トラッカーのページの右の列に、当社のほかのシステム(防災のデモなど)を置いています。
検索に載せるためにやったこと
トラッカーは作ってもすぐには検索に出ませんでした。Search Console のURL検査では「検出済み・未クロール」のままでした。原因と対策です。
- サイトマップの lastmod をページごとの本当の更新日にした: 以前は日次ジョブの時刻を全URLに打っていて、423本すべてが毎日「今日」でした。いつも全部更新されたと言うサイトマップは信用されません。いまはトラッカーなら最新の発言日を入れています
- 題名を検索される言い方にした: 「〇〇は国会でどう議論されたか」は誰も検索しません。「日本版DBSとは|いつから」「子ども・子育て支援金はいくら」のように、調べる人の言葉を先頭に置きました
- 関係するページからリンクを張った: 土砂災害ハザードマップの地域ページから罹災証明のトラッカーへ、介護事業所の検索から後期高齢者の窓口負担のトラッカーへ
使っているもの
- 国会会議録検索システム 検索用API(国立国会図書館):
https://kokkai.ndl.go.jp/api/speech - PHP 8 と SQLite(サーバーは共用のレンタルサーバー)
- 取得と集計は Python
会議録は国立国会図書館が公開している一次資料です。トラッカーは要約も賛否の判定もせず、発言の日付と会議録へのリンクを並べるだけにしています。