Bing Search APIを使ってプログラム的に検索結果を取得する方法(AtomかJSON)

マイクロソフトBing

今回、マイクロソフトのBingの検索結果を、Bing Search APIを使ってプログラム的に取得する方法をまとめました。

Googleの検索結果を取得する方法については、以下の記事をご覧ください。

Google Custom Search API(カスタムサーチAPI)を使ってプログラム的に検索結果を取得する方法
今回、GoogleのCustom Search APIを使って、プログラムから検索結果を取得してみました。 ...

スポンサーリンク
スポンサーリンク

Microsoft Azure Marketplaceからアカウントキーを取得

まず、Microsoft Azure Marketplaceにログインして、アカウントキーを取得します。

https://datamarket.azure.com/account

からログインするとよいです。

アカウントを持っていない場合、作成します。

image

ログインすると、プライマリアカウントキーにアカウントキーが記載されています。

次に、

https://datamarket.azure.com/dataset/bing/search

を開きます。

image

Bing Search APIは、無償で5,000トランザクション/月まで使えることができるので、「更新」を押しておきます。

これで準備が整いました。

Javaでプログラム的にBingから検索結果を取得する

それでは、「飛行機」というキーワードをBingからJavaプログラムを使って取得してみます。

プログラムはこんな感じです。

Microsoft Azure Marketplaceから取得したAPIキー、認証用のユーザー名及び、パスワードを使います。

例えば、このプログラムで生成したURLを使ってブラウザから以下のように入力します。

https://api.datamarket.azure.com/Bing/Search/Web?Query=%27%E9%A3%9B%E8%A1%8C%E6%A9%9F%27&$skip=1

ユーザー名とパスワードの入力を促すダイアログが表示されます。

WS000188

ここで、ユーザー名とパスワードはともにMicrosoft Azure Marketplaceで取得したプライマリアカウントキーになります。

URLのパラメーターのオプションとして以下を指定できます。

$top=50

返される結果の数を指定します。最大は50です。指定しないと50になります。

$skip=1

オフセット。返された結果の出発点を指定します。指定しないと1になります。

$format="json" または "atom"

応答の形式を指定します。JSONかATOMです。指定しないとATOMになります。

あと、調べてみる限り、検索件数を取得できないようです。

何か別の方法があるかもしれません。

Bing Search APIの料金

Bing Search APIの月あたりの料金は次の通りです。

トランザクション数 金額
5,000トランザクション/月 月額 \0
10,000トランザクション/月 月額 \1,570
20,000トランザクション/月 月額 \3,140
50,000トランザクション/月 月額 \7,850
100,000トランザクション/月 月額 \15,699
250,000トランザクション/月 月額 \39,248
500,000トランザクション/月 月額 \78,496
1,000,000トランザクション/月 月額 \156,993
1,500,000トランザクション/月 月額 \235,490
2,000,000トランザクション/月 月額 \313,986
2,500,000トランザクション/月 月額 \392,482

1トランザクションで50位まで取得できるので、100位まで取得すると仮定すると1キーワードにつき2トランザクションです。

1日83キーワード100位まで取得すると仮定すると、1日で166トランザクション、30日で4,980トランザクション必要です。

ここまでなら無料で出来そうです。

まとめ

検索市場のシェアとしては、Googleに比べるとBingは圧倒的に少ないと思います。

ただ、APIとして無料で使うには、Googleよりも安価に使えそうです。

Google Custom Search API(カスタムサーチAPI)を使ってプログラム的に検索結果を取得する方法
今回、GoogleのCustom Search APIを使って、プログラムから検索結果を取得してみました。 ...

ここで調査したことをBingと比較すると以下の結果になりました。

無料で出来るキーワード数

Google: 10キーワード/100位/1日

Bing: 83キーワード/100位/1日

プログラミングの無料レッスン体験

約8,000名の受講生と80社以上の導入実績のあるプログラミングやWebデザインのオンラインマンツーマンレッスンCodecamp

<Codecampの特徴>

1 現役エンジニアによる指導

2オンラインでのマンツーマン形式の講義

3大手企業にも導入されている実践的なカリキュラム

↓無料体験レッスン実施中です。

プログラミングのオンラインスクールCodeCamp

コメント

  1. BestJanis より:

    I see you don’t monetize your page, don’t waste your traffic, you
    can earn additional bucks every month because you’ve got hi quality
    content. If you want to know how to make extra money, search for: Ercannou’s essential tools best adsense alternative