3

Java で Bing Search API (SOAP サービス) を使用できるアプリケーションを作成する必要があります。単語の特定の検索を行う必要があります。コードは次のとおりです。

    import com.google.code.bing.search.client.BingSearchClient;
    import com.google.code.bing.search.client.BingSearchServiceClientFactory;
    import com.google.code.bing.search.client.BingSearchClient.SearchRequestBuilder;
    import com.google.code.bing.search.schema.AdultOption;
    import com.google.code.bing.search.schema.SearchOption;
    import com.google.code.bing.search.schema.SearchRequest;
    import com.google.code.bing.search.schema.SearchResponse;
    import com.google.code.bing.search.schema.SourceType;
    import com.google.code.bing.search.schema.web.WebResult;
    import com.google.code.bing.search.schema.web.WebSearchOption;
public class MyApp {    
   String apikey = "****************";
   String searchword="google";
     public static void main(String[] args){
BingSearchServiceClientFactory factory = BingSearchServiceClientFactory.newInstance();
    BingSearchClient client = factory.createBingSearchClient();
    SearchRequestBuilder builder = client.newSearchRequestBuilder();
    builder.withAppId(apikey);
    builder.withQuery(searchword);
    builder.withSourceType(SourceType.WEB);
    builder.withVersion("2.0");
    builder.withMarket("en-us");
    builder.withAdultOption(AdultOption.MODERATE);
    builder.withSearchOption(SearchOption.ENABLE_HIGHLIGHTING);
    builder.withWebRequestCount(10L);
    builder.withWebRequestOffset(0L);
    builder.withWebRequestSearchOption(WebSearchOption.DISABLE_HOST_COLLAPSING);        
    builder.withWebRequestSearchOption(WebSearchOption.DISABLE_QUERY_ALTERATIONS);
    SearchResponse response = client.search(builder.getResult());

    for (WebResult result : response.getWeb().getResults()) {
            System.out.println(result.getTitle());
            System.out.println(result.getDescription());
            System.out.println(result.getUrl());
            System.out.println(result.getDateTime());
    }
}
    }

このhttp://code.google.com/p/bing-search-java-sdk/サイトを見つけました。Azure MarketPlace からアプリキーを取得します。エラーが表示されます: 応答を表示するループの行で java.lang.NullPointerException 。つまり、応答が null です。何が欠けているのかわかりません。

4

1 に答える 1

2

bing は現在、ライセンス システムを変更しています。この API は、「古い」バージョン 2 ライセンスを使用して作成されました。MS は、Azzure マーケット プレースへの移行時にいくつかの変更を行いました: https://datamarket.azure.com/dataset/5BA839F1-12CE-4CCE-BF57-A49D98D29A44 移行ガイド: http://go.microsoft.com/fwlink/?LinkID =248077

これは、あなたが既に使用しているこの Java-API ラッパーではカバーされていないと思います。

于 2012-06-20T09:34:44.370 に答える