Início Rápido: Utilizar a biblioteca de cliente da Pesquisa de Notícias do Bing
Aviso
A 30 de outubro de 2020, as APIs de Pesquisa do Bing passaram dos serviços de IA do Azure para os Serviços Pesquisa do Bing. Esta documentação é fornecida apenas para referência. Para obter documentação atualizada, veja a documentação da API de pesquisa do Bing. Para obter instruções sobre como criar novos recursos do Azure para a pesquisa do Bing, veja Criar um recurso de Pesquisa do Bing através do Azure Marketplace.
Utilize este início rápido para começar a procurar notícias com a biblioteca de cliente da Pesquisa de Notícias do Bing para C#. Embora a Pesquisa de Notícias do Bing tenha uma API REST compatível com a maioria das linguagens de programação, a biblioteca de cliente fornece uma forma fácil de integrar o serviço nas suas aplicações. O código fonte deste exemplo pode ser encontrado no GitHub.
Pré-requisitos
Qualquer edição do Visual Studio 2017 ou posterior.
O framework Json.NET, disponível como um pacote NuGet.
Se estiver a utilizar o Linux/MacOS, esta aplicação pode ser executada com o Mono.
O pacote NuGet do SDK de Pesquisa de Notícias do Bing. A instalação deste pacote também instala o seguinte:
- Microsoft.Rest.ClientRuntime
- Microsoft.Rest.ClientRuntime.Azure
- Newtonsoft.Json
Para configurar uma aplicação de consola com a biblioteca de cliente da Pesquisa de Notícias do Bing, navegue para a opção Manage NuGet Packages
a partir do Explorador de Soluções no Visual Studio. Adicione o pacote Microsoft.Azure.CognitiveServices.Search.NewsSearch
.
Criar um recurso do Azure
Comece a utilizar a API de Pesquisa de Notícias do Bing ao criar um dos seguintes recursos do Azure:
- Disponível através do portal do Azure até eliminar o recurso.
- Utilize o escalão de preço gratuito para experimentar o serviço e atualize mais tarde para um escalão pago para produção.
- Disponível através do portal do Azure até eliminar o recurso.
- Utilize a mesma chave e ponto final para as suas aplicações, em vários serviços de IA do Azure.
Criar e inicializar um projeto
Crie uma nova solução de consola C# no Visual Studio. Em seguida, adicione o seguinte ao ficheiro de código principal.
using System; using System.Linq; using Microsoft.Azure.CognitiveServices.Search.NewsSearch;
Crie uma variável para a sua chave de API, um termo de pesquisa e, em seguida, instanciar o cliente de pesquisa de notícias com a mesma.
var key = "YOUR-ACCESS-KEY"; var searchTerm = "Quantum Computing"; var client = new NewsSearchClient(new ApiKeyServiceClientCredentials(key));
Enviar um pedido e analisar o resultado
Utilize o cliente para enviar um pedido de pesquisa para a Serviço de pesquisa de Notícias do Bing:
var newsResults = client.News.SearchAsync(query: searchTerm, market: "en-us", count: 10).Result;
Se forem devolvidos resultados, analise-os:
if (newsResults.Value.Count > 0) { var firstNewsResult = newsResults.Value[0]; Console.WriteLine($"TotalEstimatedMatches value: {newsResults.TotalEstimatedMatches}"); Console.WriteLine($"News result count: {newsResults.Value.Count}"); Console.WriteLine($"First news name: {firstNewsResult.Name}"); Console.WriteLine($"First news url: {firstNewsResult.Url}"); Console.WriteLine($"First news description: {firstNewsResult.Description}"); Console.WriteLine($"First news published time: {firstNewsResult.DatePublished}"); Console.WriteLine($"First news provider: {firstNewsResult.Provider[0].Name}"); } else { Console.WriteLine("Couldn't find news results!"); } Console.WriteLine("Enter any key to exit..."); Console.ReadKey();
Passos seguintes
Utilize este início rápido para começar a procurar notícias com a biblioteca de cliente da Pesquisa de Notícias do Bing para Java. Embora a Pesquisa de Notícias do Bing tenha uma API REST compatível com a maioria das linguagens de programação, a biblioteca de cliente fornece uma forma fácil de integrar o serviço nas suas aplicações. O código fonte deste exemplo pode ser encontrado no GitHub.
Pré-requisitos
Instale as dependências da biblioteca de cliente da Pesquisa de Notícias do Bing com o Maven, o Gradle ou outro sistema de gestão de dependências. O ficheiro POM do Maven necessita da seguinte declaração:
<dependencies>
<dependency>
<groupId>com.microsoft.azure.cognitiveservices</groupId>
<artifactId>azure-cognitiveservices-newssearch</artifactId>
<version>0.0.1-beta-SNAPSHOT</version>
</dependency>
</dependencies>
Criar um recurso do Azure
Comece a utilizar a API de Pesquisa de Notícias do Bing ao criar um dos seguintes recursos do Azure:
- Disponível através do portal do Azure até eliminar o recurso.
- Utilize o escalão de preço gratuito para experimentar o serviço e atualize mais tarde para um escalão pago para produção.
- Disponível através do portal do Azure até eliminar o recurso.
- Utilize a mesma chave e ponto final para as suas aplicações, em vários serviços de IA do Azure.
Criar e inicializar um projeto
Crie um novo projeto Java no seu IDE ou editor favorito e importe as seguintes bibliotecas.
import com.microsoft.azure.cognitiveservices.newssearch.*;
import com.microsoft.azure.cognitiveservices.newssearch.implementation.NewsInner;
import com.microsoft.azure.cognitiveservices.newssearch.implementation.NewsSearchAPIImpl;
import com.microsoft.azure.cognitiveservices.newssearch.implementation.TrendingTopicsInner;
import com.microsoft.rest.credentials.ServiceClientCredentials;
import okhttp3.Interceptor;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.Response;
import java.io.IOException;
Criar um cliente de pesquisa e armazenar credenciais
Crie um método chamado
getClient()
que devolva um novoNewsSearchAPIImpl
cliente de pesquisa. Adicione o ponto final como o primeiro parâmetro para o novoNewsSearchAPIImpl
objeto e um novoServiceClientCredentials
objeto para armazenar as suas credenciais.public static NewsSearchAPIImpl getClient(final String subscriptionKey) { return new NewsSearchAPIImpl("https://api.cognitive.microsoft.com/bing/v7.0/", new ServiceClientCredentials() { }); }
Para criar o
ServiceClientCredentials
objeto, substitua aapplyCredentialsFilter()
função . Transmita umOkHttpClient.Builder
para o método e utilize o método doaddNetworkInterceptor()
construtor para criar as suas credenciais para a chamada da biblioteca de cliente.new ServiceClientCredentials() { @Override public void applyCredentialsFilter(OkHttpClient.Builder builder) { builder.addNetworkInterceptor( new Interceptor() { @Override public Response intercept(Chain chain) throws IOException { Request request = null; Request original = chain.request(); // Request customization: add request headers. Request.Builder requestBuilder = original.newBuilder() .addHeader("Ocp-Apim-Subscription-Key", subscriptionKey); request = requestBuilder.build(); return chain.proceed(request); } }); } });
Enviar e receber um pedido de pesquisa
Crie um método que chame
getClient()
e envie um pedido de pesquisa para o Serviço de pesquisa de Notícias do Bing. Filtre a pesquisa com os parâmetros de mercado e contagem e, em seguida, imprima informações sobre o primeiro resultado de notícias: nome, URL, data de publicação, descrição, nome do fornecedor e número total de correspondências estimadas para a pesquisa.public static void newsSearch(String subscriptionKey) { NewsSearchAPIImpl client = getClient(subscriptionKey); String searchTerm = "Quantum Computing"; NewsInner newsResults = client.searchs().list(searchTerm, null, null, null, null, null, 100, null, "en-us", null, null, null, null, null, null, null); if (newsResults.value().size() > 0) { NewsArticle firstNewsResult = newsResults.value().get(0); System.out.println(String.format("TotalEstimatedMatches value: %d", newsResults.totalEstimatedMatches())); System.out.println(String.format("News result count: %d", newsResults.value().size())); System.out.println(String.format("First news name: %s", firstNewsResult.name())); System.out.println(String.format("First news url: %s", firstNewsResult.url())); System.out.println(String.format("First news description: %s", firstNewsResult.description())); System.out.println(String.format("First news published time: %s", firstNewsResult.datePublished())); System.out.println(String.format("First news provider: %s", firstNewsResult.provider().get(0).name())); } else { System.out.println("Couldn't find news results!"); } }
Adicione o método de pesquisa a um
main()
método para executar o código.public static void main(String[] args) { String subscriptionKey = "YOUR-SUBSCRIPTION-KEY"; NewsSearchSDK.newsSearch(subscriptionKey); }
Passos seguintes
Utilize este início rápido para começar a procurar notícias com a biblioteca de cliente da Pesquisa de Notícias do Bing para JavaScript. Embora a Pesquisa de Notícias do Bing tenha uma API REST compatível com a maioria das linguagens de programação, a biblioteca de cliente fornece uma forma fácil de integrar o serviço nas suas aplicações. O código fonte deste exemplo pode ser encontrado no GitHub.
Pré-requisitos
- A versão mais recente do Node.js.
- O SDK de Pesquisa de Notícias do Bing para JavaScript
- Para instalar, execute
npm install @azure/cognitiveservices-newssearch
- Para instalar, execute
- A
CognitiveServicesCredentials
classe do@azure/ms-rest-azure-js
pacote para autenticar o cliente.- Para instalar, execute
npm install @azure/ms-rest-azure-js
- Para instalar, execute
Criar um recurso do Azure
Comece a utilizar a API de Pesquisa de Notícias do Bing ao criar um dos seguintes recursos do Azure:
- Disponível através do portal do Azure até eliminar o recurso.
- Utilize o escalão de preço gratuito para experimentar o serviço e atualize mais tarde para um escalão pago para produção.
- Disponível através do portal do Azure até eliminar o recurso.
- Utilize a mesma chave e ponto final para as suas aplicações, em vários serviços de IA do Azure.
Criar e inicializar a aplicação
Crie uma instância de
CognitiveServicesCredentials
. Crie variáveis para a sua chave de subscrição e um termo de pesquisa.const CognitiveServicesCredentials = require('@azure/ms-rest-azure-js').CognitiveServicesCredentials; let credentials = new CognitiveServicesCredentials('YOUR-ACCESS-KEY'); let search_term = 'Winter Olympics'
instanciar o cliente:
const NewsSearchAPIClient = require('@azure/cognitiveservices-newssearch'); let client = new NewsSearchAPIClient(credentials);
Enviar uma consulta de pesquisa
Utilize o cliente para procurar com um termo de consulta, neste caso "Jogos Olímpicos de Inverno":
client.newsOperations.search(search_term).then((result) => { console.log(result.value); }).catch((err) => { throw err; });
O código imprime result.value
itens na consola sem analisar o texto. Os resultados, se existirem por categoria, incluirão:
_type: 'NewsArticle'
_type: 'WebPage'
_type: 'VideoObject'
_type: 'ImageObject'
Passos seguintes
Utilize este início rápido para começar a procurar notícias com a biblioteca de cliente da Pesquisa de Notícias do Bing para Python. Embora a Pesquisa de Notícias do Bing tenha uma API REST compatível com a maioria das linguagens de programação, a biblioteca de cliente fornece uma forma fácil de integrar o serviço nas suas aplicações. O código fonte deste exemplo pode ser encontrado no GitHub.
Pré-requisitos
- Python 2.x ou 3.x
Recomenda-se a utilização de um ambiente virtual para o desenvolvimento do Python. Pode instalar e inicializar o ambiente virtual com o módulo venv. Tem de instalar um virtualenv para Python 2.7. Pode criar um ambiente virtual com:
python -m venv mytestenv
Pode instalar as dependências da biblioteca de cliente da Pesquisa de Notícias do Bing com este comando:
python -m pip install azure-cognitiveservices-search-newssearch
Criar um recurso do Azure
Comece a utilizar a API de Pesquisa de Notícias do Bing ao criar um dos seguintes recursos do Azure:
- Disponível através do portal do Azure até eliminar o recurso.
- Utilize o escalão de preço gratuito para experimentar o serviço e atualize mais tarde para um escalão pago para produção.
- Disponível através do portal do Azure até eliminar o recurso.
- Utilize a mesma chave e ponto final para as suas aplicações, em vários serviços de IA do Azure.
Criar e inicializar a aplicação
Crie um novo ficheiro Python no seu IDE ou editor favorito e importe as seguintes bibliotecas. Crie uma variável para a sua chave de subscrição e o termo de pesquisa.
from azure.cognitiveservices.search.newssearch import NewsSearchClient from msrest.authentication import CognitiveServicesCredentials subscription_key = "YOUR-SUBSCRIPTION-KEY" endpoint = "YOUR-ENDPOINT" search_term = "Quantum Computing"
Inicializar o cliente e enviar um pedido
Crie uma instância de
CognitiveServicesCredentials
.client = NewsSearchClient(endpoint=endpoint, credentials=CognitiveServicesCredentials(subscription_key))
Envie uma consulta de pesquisa para a API de Pesquisa de Notícias e armazene a resposta.
news_result = client.news.search(query=search_term, market="en-us", count=10)
Analisar a resposta
Se forem encontrados resultados de pesquisa, imprima o primeiro resultado da página Web:
if news_result.value:
first_news_result = news_result.value[0]
print("Total estimated matches value: {}".format(
news_result.total_estimated_matches))
print("News result count: {}".format(len(news_result.value)))
print("First news name: {}".format(first_news_result.name))
print("First news url: {}".format(first_news_result.url))
print("First news description: {}".format(first_news_result.description))
print("First published time: {}".format(first_news_result.date_published))
print("First news provider: {}".format(first_news_result.provider[0].name))
else:
print("Didn't see any news result data..")