Filtrowanie odpowiedzi, które zawiera odpowiedź wyszukiwania

Ostrzeżenie

30 października 2020 r. interfejsy API Wyszukiwanie Bing zostały przeniesione z usług Azure AI do usług Wyszukiwanie Bing Services. Ta dokumentacja jest dostarczana tylko do celów referencyjnych. Aby uzyskać zaktualizowaną dokumentację, zobacz dokumentację interfejsu API wyszukiwania Bing. Aby uzyskać instrukcje dotyczące tworzenia nowych zasobów platformy Azure na potrzeby wyszukiwania Bing, zobacz Tworzenie zasobu Wyszukiwanie Bing za pomocą Azure Marketplace.

Podczas wykonywania zapytań dotyczących internetu usługa Bing zwraca całą odpowiednią zawartość, którą znajdzie w wyszukiwaniu. Jeśli na przykład zapytanie wyszukiwania to "sailing+dinghies", odpowiedź może zawierać następujące odpowiedzi:

{
    "_type" : "SearchResponse",
    "webPages" : {
        "webSearchUrl" : "https:\/\/www.bing.com\/cr?IG=3A43C...",
        "totalEstimatedMatches" : 262000,
        "value" : [...]
    },
    "images" : {
        "id" : "https:\/\/api.cognitive.microsoft.com\/api\/v7\/#Images",
        "readLink" : "https:\/\/api.cognitive.microsoft.com\/api\/v7\/images\/search?q=sail...",
        "webSearchUrl" : "https:\/\/www.bing.com\/cr?IG=3A43CA5CA6464E5D...",
        "isFamilyFriendly" : true,
        "value" : [...]
    },
    "rankingResponse" : {
        "mainline" : {
            "items" : [...]
        }
    }
}    

Parametry zapytania

Aby filtrować odpowiedzi zwrócone przez usługę Bing, użyj poniższych parametrów zapytania podczas wywoływania interfejsu API.

Filtr odpowiedzi

Możesz filtrować typy odpowiedzi, które usługa Bing zawiera w odpowiedzi (na przykład obrazy, filmy wideo i wiadomości), używając parametru zapytania responseFilter , który jest rozdzielaną przecinkami listą odpowiedzi. Odpowiedź zostanie uwzględniona w odpowiedzi, jeśli usługa Bing znajdzie odpowiednią zawartość.

Aby wykluczyć konkretne odpowiedzi z odpowiedzi, takich jak obrazy, należy wstępnie utworzyć - znak do typu odpowiedzi. Na przykład:

&responseFilter=-images,-videos

Poniżej pokazano, jak używać responseFilter do żądania obrazów, filmów i wiadomości o pontonach żeglarskich. Podczas kodowania ciągu zapytania przecinki zmieniają się na %2C.

GET https://api.cognitive.microsoft.com/bing/v7.0/search?q=sailing+dinghies&responseFilter=images%2Cvideos%2Cnews&mkt=en-us HTTP/1.1  
Ocp-Apim-Subscription-Key: 123456789ABCDE  
User-Agent: Mozilla/5.0 (compatible; MSIE 10.0; Windows Phone 8.0; Trident/6.0; IEMobile/10.0; ARM; Touch; NOKIA; Lumia 822)  
X-Search-ClientIP: 999.999.999.999  
X-Search-Location:  47.60357;long:-122.3295;re:100  
X-MSEdge-ClientID: <blobFromPriorResponseGoesHere>  
Host: api.cognitive.microsoft.com  

Poniżej przedstawiono odpowiedź na poprzednie zapytanie. Ponieważ usługa Bing nie znalazła odpowiednich wyników wideo i wiadomości, odpowiedź nie zawiera ich.

{
    "_type" : "SearchResponse",
    "images" : {
        "id" : "https:\/\/api.cognitive.microsoft.com\/api\/v7\/#Images",
        "readLink" : "https:\/\/api.cognitive.microsoft.com\/api\/v7\/images\/search?q=sail...",
        "webSearchUrl" : "https:\/\/www.bing.com\/cr?IG=3AD78B183C56456C...",
        "isFamilyFriendly" : true,
        "value" : [...]
    },
    "rankingResponse" : {
        "mainline" : {
            "items" : [{
                "answerType" : "Images",
                "value" : {
                    "id" : "https:\/\/api.cognitive.microsoft.com\/api\/v7\/#Images"
                }
            }]
        }
    }
}

Chociaż usługa Bing nie zwróciła wyników wideo i wiadomości w poprzedniej odpowiedzi, nie oznacza to, że zawartość wideo i wiadomości nie istnieje. Oznacza to po prostu, że strona nie zawierała ich. Jednak w przypadku wyświetlenia większej liczby wyników kolejne strony prawdopodobnie będą je uwzględniać. Ponadto w przypadku bezpośredniego wywołania interfejsu API wyszukiwania wideo i punktów końcowych interfejsu API wyszukiwania wiadomości odpowiedź prawdopodobnie będzie zawierać wyniki.

Nie zaleca się używania polecenia responseFilter , aby uzyskać wyniki z jednego interfejsu API. Jeśli potrzebujesz zawartości z pojedynczego interfejsu API Bing, wywołaj ten interfejs API bezpośrednio. Na przykład w celu odbierania tylko obrazów wyślij żądanie do punktu końcowego https://api.cognitive.microsoft.com/bing/v7.0/images/search interfejsu API wyszukiwania obrazów lub jeden z innych punktów końcowych obrazów . Wywoływanie pojedynczego interfejsu API jest ważne nie tylko ze względu na wydajność, ale dlatego, że interfejsy API specyficzne dla zawartości oferują bogatsze wyniki. Można na przykład użyć filtrów, które nie są dostępne dla interfejsu API wyszukiwania w Sieci Web, aby filtrować wyniki.

Witryna

Aby uzyskać wyniki wyszukiwania z określonej domeny, dołącz site: parametr zapytania w ciągu zapytania.

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

Uwaga

W zależności od zapytania, jeśli używasz site: operatora zapytania, istnieje prawdopodobieństwo, że odpowiedź może zawierać zawartość dla dorosłych niezależnie od ustawienia safeSearch . Operatora site: używaj tylko wtedy, gdy znasz zawartość witryny i w swoim scenariuszu uwzględniasz możliwość pojawienia się zawartości dla dorosłych.

Świeżość

Aby ograniczyć wyniki odpowiedzi internetowej do stron internetowych odnalezionych przez usługę Bing w określonym okresie, ustaw parametr zapytania świeżości na jedną z następujących wartości bez uwzględniania wielkości liter:

  • Day — Zwracanie stron internetowych odnalezionych przez usługę Bing w ciągu ostatnich 24 godzin
  • Week — Zwracanie stron internetowych odnalezionych przez usługę Bing w ciągu ostatnich 7 dni
  • Month — Zwracanie stron internetowych odnalezionych w ciągu ostatnich 30 dni

Możesz również ustawić ten parametr na niestandardowy zakres dat w formularzu YYYY-MM-DD..YYYY-MM-DD.

https://<host>/bing/v7.0/search?q=ipad+updates&freshness=2019-02-01..2019-05-30

Aby ograniczyć wyniki do pojedynczej daty, ustaw parametr freshness na określoną datę:

https://<host>/bing/v7.0/search?q=ipad+updates&freshness=2019-02-04

Wyniki mogą zawierać strony internetowe, które wykraczają poza określony okres, jeśli liczba stron internetowych pasujących do kryteriów filtrowania jest mniejsza niż liczba żądanych stron internetowych (lub domyślna liczba zwracana przez usługę Bing).

Ograniczanie liczby odpowiedzi w odpowiedzi

Usługa Bing może zwrócić wiele typów odpowiedzi w odpowiedzi JSON. Jeśli na przykład wykonasz zapytanie dotyczące żeglarstwa i dinghies, usługa Bing może zwrócić webpageswartości , , imagesvideosi relatedSearches.

{
    "_type" : "SearchResponse",
    "queryContext" : {
        "originalQuery" : "sailing dinghies"
    },
    "webPages" : {...},
    "images" : {...},
    "relatedSearches" : {...},
    "videos" : {...},
    "rankingResponse" : {...}
}

Aby ograniczyć liczbę odpowiedzi zwracanych przez usługę Bing do dwóch pierwszych odpowiedzi (stron internetowych i obrazów), ustaw parametr zapytania answerCount na 2.

GET https://api.cognitive.microsoft.com/bing/v7.0/search?q=sailing+dinghies&answerCount=2&mkt=en-us HTTP/1.1  
Ocp-Apim-Subscription-Key: 123456789ABCDE  
User-Agent: Mozilla/5.0 (compatible; MSIE 10.0; Windows Phone 8.0; Trident/6.0; IEMobile/10.0; ARM; Touch; NOKIA; Lumia 822)  
X-Search-ClientIP: 999.999.999.999  
X-Search-Location:  47.60357;long:-122.3295;re:100  
X-MSEdge-ClientID: <blobFromPriorResponseGoesHere>  
Host: api.cognitive.microsoft.com  

Odpowiedź zawiera tylko webPages i images.

{
    "_type" : "SearchResponse",
    "queryContext" : {
        "originalQuery" : "sailing dinghies"
    },
    "webPages" : {...},
    "images" : {...},
    "rankingResponse" : {...}
}

Jeśli dodasz responseFilter parametr zapytania do poprzedniego zapytania i ustawisz go na strony internetowe i wiadomości, odpowiedź zawiera tylko strony internetowe, ponieważ wiadomości nie są sklasyfikowane.

{
    "_type" : "SearchResponse",
    "queryContext" : {
        "originalQuery" : "sailing dinghies"
    },
    "webPages" : {...},
    "rankingResponse" : {...}
}

Promowanie odpowiedzi, które nie są sklasyfikowane

Jeśli najwyżej sklasyfikowane odpowiedzi zwracane przez usługę Bing dla zapytania to strony internetowe, obrazy, wideo i powiązaneWyszukiwyszuki, odpowiedź będzie zawierać te odpowiedzi. Jeśli ustawisz wartość answerCount na dwie (2), usługa Bing zwraca dwie pierwsze sklasyfikowane odpowiedzi: strony internetowe i obrazy. Jeśli chcesz, aby usługa Bing zawierała obrazy i filmy wideo w odpowiedzi, określ parametr zapytania podwyższania poziomu i ustaw go na obrazy i filmy wideo.

GET https://api.cognitive.microsoft.com/bing/v7.0/search?q=sailing+dinghies&answerCount=2&promote=images%2Cvideos&mkt=en-us HTTP/1.1  
Ocp-Apim-Subscription-Key: 123456789ABCDE  
User-Agent: Mozilla/5.0 (compatible; MSIE 10.0; Windows Phone 8.0; Trident/6.0; IEMobile/10.0; ARM; Touch; NOKIA; Lumia 822)  
X-Search-ClientIP: 999.999.999.999  
X-Search-Location:  47.60357;long:-122.3295;re:100  
X-MSEdge-ClientID: <blobFromPriorResponseGoesHere>  
Host: api.cognitive.microsoft.com  

Poniżej przedstawiono odpowiedź na powyższe żądanie. Usługa Bing zwraca dwie najważniejsze odpowiedzi, strony internetowe i obrazy oraz promuje filmy wideo w odpowiedzi.

{
    "_type" : "SearchResponse",
    "queryContext" : {
        "originalQuery" : "sailiing dinghies"
    },
    "webPages" : {...},
    "images" : {...},
    "videos" : {...},
    "rankingResponse" : {...}
}

Jeśli ustawisz promote wartość wiadomości, odpowiedź nie zawiera odpowiedzi na wiadomości, ponieważ nie jest to sklasyfikowana odpowiedź — możesz promować tylko sklasyfikowane odpowiedzi.

Odpowiedzi, które chcesz podwyższyć, nie są liczone względem limitu answerCount . Jeśli na przykład sklasyfikowane odpowiedzi to wiadomości, obrazy i filmy wideo, a następnie ustawiono answerCount wartość 1 i promote wiadomości, odpowiedź zawiera wiadomości i obrazy. Jeśli natomiast sklasyfikowane odpowiedzi to filmy wideo, obrazy i wiadomości, odpowiedź zawiera filmy wideo i wiadomości.

Można użyć promote tylko wtedy, gdy określisz answerCount parametr zapytania.