https://commons.wikimedia.org/wiki/Main_Page
の右上に検索窓があるかと思いますが、ここに単語をいれると検索できます。
例えばこんな感じ
https://commons.wikimedia.org/w/index.php?search=black+cat&title=Special:MediaSearch&go=Go&type=image
黒い猫の画像がでます。
これと同じことををMediawiki APIでやりたくてこのような処理を書きました
https://commons.wikimedia.org/w/api.php?format=json&action=query&list=search&srsearch=black+cat&srlimit=max
結果はこんなかんじでした
{"batchcomplete":"","limits":{"search":500},"query":{"searchinfo":{"totalhits":405},"search":[{"ns":0,"title":"Setophaga","pageid":17921946,"size":null,"wordcount":0,"snippet":"","timestamp":"2019-03-11T16:23:14Z"},{"ns":0,"title":"Cincinnati Zoo","pageid":17061365,"size":null,"wordcount":0,"snippet":"","timestamp":"2016-10-21T18:24:34Z"},{"ns":0,"title":"Ramphastidae","pageid":156945,"size":null,"wordcount":0,"snippet":"","timestamp":"2016-04-05T15:44:43Z"},{"ns":0,"title":"Parulidae","pageid":2263936,"size":null,"wordcount":0,"snippet":"","timestamp":"2016-07-25T20:50:53Z"},{"ns":0,"title":"Cisticolidae","pageid":2263759,"size":null,"wordcount":0,"snippet":"","timestamp":"2019-12-08T22:38:52Z"},{"ns":0,"title":"Cisticola","pageid":19192973,"size":null,"wordcount":0,"snippet":"","timestamp":"2019-11-12T12:16:48Z"},{"ns":0,"title":"Centropus","pageid":2263769,"size":null,"wordcount":0,"snippet":"","timestamp":"2019-12-18T04:21:52Z"},{"ns":0,"title":"Accipitriformes","pageid":18173240,"size":null,"wordcount":0,"snippet":"","timestamp":"2017-05-11T12:01:41Z"},{"ns":0,"title":"Apalis","pageid":19213632,"size":null,"wordcount":0,"snippet":"","timestamp":"2019-03-07T09:21:58Z"},{"ns":0,"title":"Felis silvestris catus","pageid":948,"size":null,"wordcount":0,"snippet":"","timestamp":"2021-04-30T06:24:44Z"},{"ns":0,"title":"Phoenicurus","pageid":17885964,"size":null,"wordcount":0,"snippet":"","timestamp":"2019-03-10T15:52:18Z"},
...
結論から言って思いっきり違うのですが、どうすれば合わせられるのでしょう。(画像のURLがほしい)
なおこのtitleってのが各ページらしい。
{"ns":0,"title":"Setophaga","pageid":17921946," だと
https://commons.wikimedia.org/wiki/Setophaga
の意味らしい。
だからここにFile:XXXの名前が並ぶはずだ。
https://commons.wikimedia.org/w/api.php?action=opensearch&format=json&search=black+cat&limit=max
も、やってみたが4こしか取れなくて結果も同じになりませんでした。
あと
https://www.mediawiki.org/wiki/API:Opensearch
https://www.mediawiki.org/wiki/API:Search
は熟読したがmediaだけに結果をしぼるってのはわかりませんでした。
ネットで調べると
https://commons.wikimedia.org/w/api.php?action=query&prop=images&imlimit=500&redirects=1&titles=Cat
https://commons.wikimedia.org/w/api.php?action=query&generator=images&prop=imageinfo&gimlimit=500&redirects=1&titles=cat&iiprop=canonicaltitle|url
こういう手法はみつかったがこれはtitles=Catでわかるようにそのタイトルのページがあればできるもので任意文字列で検索する
ものではなかった。
あと使えそうなアクションを
https://www.mediawiki.org/wiki/API:Main_page
で見たが見つけられません。
クエリのオプションも調べたが分かりません
https://www.mediawiki.org/w/api.php?action=help&modules=query
でいい感じで煮詰まってしまいましたが、どういうパラメータでやれば画像一覧が取れるかわかりますか?
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。