Closed5
wiki APIで人物検索がしたい。したくない?

仕様書
APIの使い方はここにあった
キーはquery
を使う
query
の仕様はここ

いけた
https://ja.wikipedia.org/w/api.php
?action=query // Fetch data from and about MediaWiki.
&list=search // Perform a full text search.
&srsearch=マクドナルド // Search for page titles or content matching this value.
&format=json
ただ、できれば
- 人間だけに絞り込みたい
- 画像も欲しい
と欲張ってみる

お、とりあえず画像は拾えたかな?
https://ja.wikipedia.org/w/api.php
?action=query
&generator=search // Get the list of pages to work on by executing the specified query module.
&gsrsearch=マクドナルド // srsearchにg(enerator)という接頭辞つける必要がある。これが本当の接頭g
&prop=pageimages // Which properties to get for the queried pages.
&format=json

画像が小さすぎたので大きくした
https://ja.wikipedia.org/w/api.php
?action=query
&generator=search
&gsrsearch=マクドナルド
&prop=pageimages
&pithumbsize=300 // Maximum width in pixels of thumbnail images.
&format=json

おっ、いけた
https://ja.wikipedia.org/w/api.php
?action=query
&generator=search
&gsrsearch=マクドナルド+hastemplate:生年月日と年齢 // 人物はこのテンプレート使用してる
&prop=pageimages
&pithumbsize=300
&format=json
他にもマクドナルド+incategory:人物
などの絞り込みもあるがwikiのカテゴリは恐ろしいほど細分化されているので全ての人間に「人物」カテゴリがついているかと言われるとそうでもない
例えばマクドナルド兄弟にも例に倣って「人物」のカテゴリはついておらず、
- マクドナルドの人物
- 兄弟姉妹の二人
- スコットランド系アメリカ人
- 1902年生
- 1909年生
- 1971年没
- 1998年没
といった具合
特定のカテゴリの人物に絞る時には便利だが、「ざっくり人間を検索をしたい」という時にはもう少し裾野を広げる必要があり、丁度いいのがhastemplate:生年月日と年齢
このスクラップは2022/05/21にクローズされました