Bing Image Search API で Web から画像を取得するGet images from the web with the Bing Image Search API

警告

Bing Search API は、Cognitive Services から Bing Search Services に移行されます。Bing Search APIs are moving from Cognitive Services to Bing Search Services. 2020 年 10 月 30 日 以降、Bing Search の新しいインスタンスは、こちらに記載されているプロセスに従ってプロビジョニングする必要があります。Starting October 30, 2020, any new instances of Bing Search need to be provisioned following the process documented here. Cognitive Services を使用してプロビジョニングされた Bing Search API は、次の 3 年間、または Enterprise Agreement の終わり (どちらか先に発生した方) までサポートされます。Bing Search APIs provisioned using Cognitive Services will be supported for the next three years or until the end of your Enterprise Agreement, whichever happens first. 移行手順については、Bing Search Services に関する記事を参照してください。For migration instructions, see Bing Search Services.

Bing Image Search REST API を使用するとき、次の GET 要求を送信することで、検索語句に関連した画像を Web から取得できます。When you use the Bing Image Search REST API, you can get images from the web that are related to your search term by sending the following GET request:

GET https://api.cognitive.microsoft.com/bing/v7.0/images/search?q=sailing+dinghies&mkt=en-us HTTP/1.1
Ocp-Apim-Subscription-Key: 123456789ABCDE
X-MSEdge-ClientIP: 999.999.999.999
X-Search-Location: lat:47.60357;long:-122.3295;re:100
X-MSEdge-ClientID: <blobFromPriorResponseGoesHere>
Host: api.cognitive.microsoft.com

URL エンコードされた検索語句には、q クエリ パラメーターを使用します。Use the q query parameter for your url-encoded search term. たとえば、「sailing dinghies」と入力した場合、qsailing+dinghies または sailing%20dinghies に設定します。For example, if you enter sailing dinghies, set q to sailing+dinghies or sailing%20dinghies.

重要

  • すべての要求は、クライアントからではなく、サーバーから実行する必要があります。All requests must be made from a server, and not from a client.
  • いずれかの Bing Search API を初めて呼び出す場合は、クライアント ID ヘッダーを含めないでください。If it's your first time calling any of the Bing search APIs, don't include the client ID header. クライアント ID を含めるのは、既に Bing API を呼び出してユーザーとデバイスの組み合わせに対応するクライアント ID が取得済みである場合だけです。Only include the client ID if you've previously called a Bing API that returned a client ID for the user and device combination.

特定の Web ドメインから画像を取得するGet images from a specific web domain

特定のドメインから画像を取得するには、site: というクエリ演算子を使用します。To get images from a specific domain, use the site: query operator.

GET https://api.cognitive.microsoft.com/bing/v7.0/images/search?q=sailing+dinghies+site:contososailing.com&mkt=en-us HTTP/1.1

注意

site: 演算子を使用したクエリへの応答には、safeSearch の設定に関係なく成人向けのコンテンツが含まれることがあります。Responses to queries using the site: operator might include adult content regardless of the safeSearch setting. site: の使用は、対象となるドメイン上のコンテンツを把握している場合に限定してください。Only use site: if you're aware of the content on the domain.

イメージのフィルターFilter images

Images Search API の既定の動作では、クエリとの関連性が高い画像がすべて返されます。By default, the Image Search API returns all images that are relevant to the query. 背景が透明な画像や特定のサイズの画像のみを検索対象とするなど、Bing から返された画像をフィルタリングする必要がある場合は、次のクエリ パラメーターを使用してください。If you want to filter the images that Bing returns (for example, to return only images with a transparent background or specific size), use the following query parameters:

  • aspect - 画像を縦横比でフィルタリング (例: 標準またはワイド スクリーン画像など)。aspect—Filter images by aspect ratio (for example, standard or wide screen images).
  • color - ドミナント カラーや白黒で画像をフィルタリング。color—Filter images by dominant color or black and white.
  • freshness - 新しさで画像をフィルタリング (例: この 1 週間に Bing によって検出された画像など)。freshness—Filter images by age (for example, images discovered by Bing in the past week).
  • heightwidth - 幅と高さで画像をフィルタリング。height, width—Filter images by width and height.
  • imageContent - 画像をコンテンツでフィルタリング (例: 人の顔が映った画像など)。imageContent—Filter images by content (for example, images that show only a person's face).
  • imageType - 画像を種類でフィルタリング (例: クリップ アート、アニメーション GIF、透明な背景)。imageType—Filter images by type (for example, clip art, animated GIFs, or transparent backgrounds).
  • license - サイトに関連付けられているライセンスの種類で画像をフィルタリング。license—Filter images by the type of license associated with the site.
  • size - 画像をサイズでフィルタリング (最大 200 x 200 ピクセルの小さな画像など)。size—Filter images by size, such as small images up to 200x200 pixels.

特定のドメインから画像を取得するには、site: というクエリ演算子を使用します。To get images from a specific domain, use the site: query operator.

次の例は、Bing が過去 1 週間以内に検出した小さな画像を ContosoSailing.com から取得する方法を示しています。The following example shows how to get small images from ContosoSailing.com that Bing discovered in the past week.

GET https://api.cognitive.microsoft.com/bing/v7.0/images/search?q=sailing+dinghies+site:contososailing.com&size=small&freshness=week&mkt=en-us HTTP/1.1  
Ocp-Apim-Subscription-Key: 123456789ABCDE  
X-MSEdge-ClientIP: 999.999.999.999  
X-Search-Location: lat:47.60357;long:-122.3295;re:100  
X-MSEdge-ClientID: <blobFromPriorResponseGoesHere>  
Host: api.cognitive.microsoft.com  

Bing Image Search の応答の形式Bing Image Search response format

Bing からの応答メッセージには、クエリとの関連性が高いと Cognitive Services が判断した画像のリストを格納する Images 応答が含まれています。The response message from Bing contains an Images answer that contains a list of images that Cognitive Services determined to be relevant to the query. このリスト内の各 Image オブジェクトには、画像の URL、サイズ、大きさ、エンコード形式、画像のサムネイルの URL、サムネイルの大きさなどなど、画像に関するさまざまな情報が含まれています。Each Image object in the list includes the following information about the image: the URL, its size, its dimensions, its encoding format, a URL to a thumbnail of the image, and the thumbnail's dimensions.

注意

  • 画像は、応答に含まれている順序で表示する必要があります。Images must be displayed in the order provided in the response.
  • URL の書式とパラメーターは、予告なしで変更されることがあるため、すべての URL をそのまま使用してください。Because URL formats and parameters are subject to change without notice, use all URLs as-is. 明記されている場合を除いて、URL の書式またはパラメーターに依存しないでください。You should not take dependencies on the URL format or parameters except where noted.
{
    "name": "Rich Passage Sailing Dinghy",
    "webSearchUrl": "https:\/\/www.bing.com\/cr?IG=73118C8B4E3...",
    "thumbnailUrl": "https:\/\/tse1.mm.bing.net\/th?id=OIP.GNarK7m...",
    "datePublished": "2011-10-29T11:26:00",
    "contentUrl": "http:\/\/www.bing.com\/cr?IG=73118C8B4E3D4C3...",
    "hostPageUrl": "http:\/\/www.bing.com\/cr?IG=73118C8B4E3D4C3687...",
    "contentSize": "79239 B",
    "encodingFormat": "jpeg",
    "hostPageDisplayUrl": "en.contoso.org\/wiki\/File:Rich_Passage...",
    "width": 526,
    "height": 688,
    "thumbnail": {
        "width": 229,
        "height": 300
    },
    "imageInsightsToken": "ccid_GNarK7ma*mid_CCF85447ADA6...",
    "insightsSourcesSummary": {
        "shoppingSourcesCount": 0,
        "recipeSourcesCount": 0
    },
    "imageId": "CCF85447ADA6FFF9E96E7DF0B796F7A86E34593",
    "accentColor": "376094"
},

Bing Image Search API を呼び出すと、結果のリストが Bing から返されます。When you call the Bing Image Search API, Bing returns a list of results. このリストは、クエリとの関連性が高い結果の総数のサブセットです。The list is a subset of the total number of results that are relevant to the query. 表示できる画像の数の見積もりは、応答の totalEstimatedMatches フィールドに格納されます。The response's totalEstimatedMatches field contains an estimate of the number of images that are available to view. ページをめくるように残りの画像を表示する方法について詳しくは、画像のページ移動に関するページを参照してください。For details about how to page through the rest of the images, see Paging Images.

次のステップNext steps

まだ Bing Image Search API を試していない方は、クイック スタートをご覧ください。If you haven't tried the Bing Image Search API before, try a quickstart. さらに高度な内容をお求めの方は、単一ページの Web アプリの作成に関するチュートリアルをご覧ください。If you're looking for something more complex, try the tutorial to create a single-page web app.