6

ウィキメディアAPIにクエリを実行して、キーワードを含むすべての画像を検索し、パブリックドメインの画像のみをフィルタリングしたいと思います。したがって、追加のCC-SAライセンスはありません。

現在、私は次のクエリを使用して画像を抽出しています。

http://en.wikipedia.org/w/api.php?action=query&list=search&format=json&srsearch=roses&srnamespace=6&srinfo=totalhits%7Csuggestion&srprop=size%7Cwordcount%7Ctimestamp%7Cscore%7Csnippet%7Ctitlesnippet%7Credirecttitle%7Credirect 7Csectionsnippet%7Chasrelated&srredirects =&srlimit = 10&generator = images&titles = Wikipedia%3APublic_domain&gimlimit = 10

しかし、これは現在、ライセンスに関係なくすべての画像を返しています。名前空間を変更する必要があるかもしれませんが、どこを見ればよいのかわかりません。

ありがとう

4

1 に答える 1

4

ええと、あなたの現在のAPIクエリは2つの非常に異なることをします:

  • Wikipedia:Public Domainページから最初の10枚の画像を取得します-pages結果、その結果セットに対して取得する追加のプロパティを指定できます
  • 名前空間6でバラという単語を検索します

残念ながら、検索モジュールを一部のカテゴリでのみ検索するように制限することはできません。単一の名前空間にのみ制限することができます。したがって、すべての検索結果のカテゴリを取得し、 Category:Public Domain(およびそのすべてのサブカテゴリ)の画像を自分でフィルタリングする必要があります。APIクエリは次のようになります

api.php?action=query&prop=imageinfo|categories&generator=search&gsrsearch=roses&gsrnamespace=6&format=json

クエリを続行することを忘れないでください。カテゴリの基準に一致する10枚の画像が必要な場合は、それ以上のクエリが必要になる場合があります。

于 2012-10-09T17:21:13.640 に答える