スプレッドシート 仕事効率化

スプレッドシートのImportxmlで検索サイトの結果を取得する方法

スプレッドシートのImportxmlは情報収集には便利な関数です。

Importxmlの実例を交えた使い方の解説は下記の記事を参照ください。

参照バージョン管理は不要 スプレッドシートの変更履歴保存機能

Excelと異なりスプレッドシートでは変更履歴が自動で保存されていていつでも呼び出すことが可能です。 会社の仕事でExcelを使っている方は一つの目的の資料に対して複数の資料を作成する場合もあると思い ...

続きを見る

この関数でGoogle検索の結果を取得できたら、情報収集に便利だと思いませんか?

実際はGoogle検索はImportxmlを弾くので利用できません。

しかし、マイクロソフトのBing検索ならばImportxmlは対応しています。

どうすればBing検索がImportxmlで使えるか解説します。

記事の最後にBing検索でImportxml使用したスプレッドシートがダウンロード可能です。

Google検索をImportxmlで取得してみる

https://tanuhack.com/importxml-scraping/

上記のサイトで紹介している方法で検索結果をImportxmlで取得してみます。

#N/A が出力されます。

urlが間違っているかもしれないのでリンク先に飛んでみます。

普通に検索結果が表示されます。

実はスプレッドシートでのアクセスをGoogle側でブロックしているためです。

なぜGoogle検索結果をImportxml取得できないのか?

ImportxmlをGoogleのサーバが弾いているためです。

しかし、ブラウザではしっかりと検索結果が出力されています。

じつはGoogleにアクセスするときどのブラウザを使っているかという情報もサーバに送られています。

このブラウザの種類のことをUser Agentと言います。

スプレッドシートのimportxmlを使った場合下記になります。

Mozilla/5.0 (compatible; GoogleDocs; apps-spreadsheets; +http://docs.google.com)

この情報をもとにGoogleは検索結果を返す、返さないの判断をしているようです。

ちなみにアマゾンもImportxmlでの情報取得はできません。

多くの人がアクセスするサイトでは機械的な情報の取得を避けていると思われます。

どうすれば検索結果をImportxmlで利用できるでしょうか?

その答えの一つが検索サイトを変えることです。

Bing検索を使ったImportxmlでの情報収集

Bing検索をImportxmlで利用

Bing検索はImportxmlで弾かれないのでこちらを利用してみます。

https://www.bing.com

Bing検索とはマイクロソフトが提供するサービスです。

PCからの検索では10%程度のシェアがあるようです。

下記の用にImportxmlで結果が取得ができます。

このように検索結果やリンクなどがまとめて情報取得ができます。

オプションとGoogletrancerate関数を利用して英語検索情報を収集

Bing検索ではurlの末尾に下記の文字列を設定することで日本語検索と英語検索を選択できます。

日本語検索:&setmkt=ja-jp&setlang=ja-jp

英語検索:&setmkt=en-us&setlang=en-us

プログラミング AI 機械学習などの情報は英語のほうが情報が早いです。

しかし、英語を読むのは難しい、または読めるけど疲れるなどあるかもしれません。

そういうときに役に立つのがスプレッドシートのgoogletranslate関数です。

ImportxmlとGoogletranslateを組み合わせる

googletranslate関数を使うとGoogle翻訳のAIを利用して自動で日本語に翻訳できます。

上の用に検索結果を翻訳しつつ整理することができます。

まとめ

以上がBing検索をImportxmlで利用する方法です。

Googletranslate関数との組み合わせも紹介しました。

今回利用したスプレッドシートはこちらになります。

閲覧権限のみですが、スプレッドシートごとコピーすれば編集可能になります。

最後まで読んでいただきありがとうございました。

この記事が役に立ちましたら、SNSでシェアしてくださると嬉しいです。

-スプレッドシート, 仕事効率化

Copyright© ViBES.jpテクノロジーの最高の活かし方 , 2020 All Rights Reserved Powered by AFFINGER5.