スプレッドシートでの検索結果のURL取得について

このQ&Aのポイント
  • スプレッドシートでのGoogle検索結果のURL取得方法について悩んでいます。
  • 現在、余分な文字列が含まれてしまうため、純粋なURLの文字列を取得することができません。
  • 具体的な方法として、IMPORTXML関数を使用してURLを取得していますが、改善策を模索しています。
回答を見る
  • ベストアンサー

スプレッドシートでの検索結果のURL取得について

スプレッドシートを使い、Google検索結果のURLをスクレイピングしたいと思っています。 いろいろなサイトで紹介されている方法を試してみましたが、取得できたURLの前後に余分な文字列が含まれており、これを除いて純粋にURLの文字列だけを取得することは不可能なのでしょうか? 私がやった方法は以下のような感じです。 A1セルに「パソコン」と入力 A2セルに=IMPORTXML("http://www.google.co.jp/search?hl=jp&gl=JP&q="&A1,"//div[@id='res']//h3[@class='r']/a/@href")と入力 結果は以下のとおりです こういったものが10サイト分(検索結果1ページ分)表示されます /url?q=https://www.biccamera.com/bc/c/pc/intel/index.jsp&sa=U&ved=0ahUKEwjBvvX0ia3dAhWuxVkKHcVcB4MQFgghMAI&usg=AOvVaw185ZVa-oN20szNKSbDcXJv

質問者が選んだベストアンサー

  • ベストアンサー
  • Proof4
  • ベストアンサー率78% (151/192)
回答No.1

C1セルに=REGEXREPLACE(B1,"\/url\?q=|&sa=.+","")と入力すると、提示された例の場合は https://www.biccamera.com/bc/c/pc/intel/index.jsp のURLが取得できます。 具体的な動作は、正規表現で/url?q=の部分と&sa=以下の部分を削除しています。

参考URL:
https://support.google.com/docs/answer/3098245?hl=ja
dongurikoron
質問者

お礼

できました! もうひと手間加えればよかったんですね でも、これは自分じゃ思いつけなかったです 本当にありがとうございます!

関連するQ&A

  • 検索結果のURLの取得

    こんにちは、ExcelVBAの初心者です。 上司から検索サイトでの検索結果に出てくる上位URLをコピー&ペーストするように指示を受けたのですが、作業が大変で全然進まず困っています。 もしからた、ExcelVBAで解決できるのではと、ご相談させて頂きました。 具体的には以下のような作業を手作業でやっています。 これを自動化することは可能でしょうか? 1.エクセルに検索するキーワードがセル(A列)ごとにおさめられています。 (セルには2つのキーワードが入っていてand条件となります) 2.それをコピーしてyahooかgoogleで検索をします。 3.検索結果の上位3つまでのURLをコピーして、キーワードの右側のセルにペーストしています。(スポンサードサーチなど広告系は含みません) 【イメージです】         A            B              C     ―――――――――――――――――――――――――― 1|カメラ SONY     |________|______ 2|電子レンジ シャープ|________|______ 3|冷蔵庫 日立     |________|______             ↓         A            B              C     ―――――――――――――――――――――――――― 1|カメラ SONY     |www.sony.jp/dslr|www.sony.co.jp 2|電子レンジ シャープ|healsio.jp     |www.sharp.co.jp/sup 3|冷蔵庫 日立     |________|______ 素人で実現可能なのかも分かりませんが、もし分かる方がいらっしゃいましたら何卒お知恵をお貸しください。 どうかよろしくお願いいたします。

  • グーグルのスプレッドシートについて質問です

    探したのですが、見つからなかったので・・・。 グーグルのスプレッドシートを使っているのですが、 例えば、A列の文字をC列の入力結果によって色を変えることができるのでしょうか?文字ではなくてもセルの色とか・・・?(C1のセルが「OK」ならA1の色(文字もしくはセル)は青色とか・・・) もしくはそんな機能(関数?書式?)はないのでしょうか? よろしくお願いします

  • WEBページ上の情報を、スプレッドシートに自動挿入

    このようなことを、自動化する仕組みを作れないでしょうか。 前提 WEBページ上とグーグルスプレッドシート上を行き来します。 ◆WEBページ まずは、添付ファイルのスクショ画像をご覧くださいませ。 灰色の横帯の箇所に「DA:△」とあるのがおわかりでしょうか。 △は、それぞれ数字が書かれています。 ◆Googleスプレッドシート ◇ ・A列には、それぞれ個別の文字列(検索キーワード)が入力されています。 例として A2=キーワード1 A3=キーワード2 といった具合です。 ・シートの1行目には A列に「検索キーワード」 セルB1には 1 セルC1には 2 セルD1には 3 セルD1には 4 セルE1には 5 と入力されています。 ◆ ①グーグルスプレッドシート上のA2セル内の文字列を取得します ②1で取得した文字列を、検索窓に挿入します(できれば自動化したい)ちなみにwebブラウザはchromeを使用しています。 ③2で、検索窓に文字列を挿入した状態で、実行 ④そしたら、検索結果のページがでてきますね。  そのページには上記に記載のとおり、灰色の帯に「DA:数字」が となっているのが、いくつかあります。 ⑤一番上の DA:数字 の数字読み込み、それをグーグルスプレッドシートのセルB2 に入力 2番目のDA:数字 に数字を読み込み、それをグーグルスプレッドシートのセルC2 に入力 ・・・・ 10番目まで行う ⑥グーグルスプレッドシートのセルA3の文字列を取得 以下2~5同様に といったことを自動化する仕組みをつくるには、どのような方法を使えばいいのでしょうか? マクロ?GAS?それとももっと別のなにか?  

  • URLからタイトルを取得したい(2)

    先日の質問した者ですが、よく分からなかったのでもう一度質問します。 エクセルのA列にURLがあり、B列にタイトルを取得させたいです。 そこで、いろいろ調べてみて以下の質問を参考にし、ベストアンサーを 試したのですが、utf-8の場合は、問題なかったのですが、 今度は、Shift_JISのページが文字化けしてしまいます。 http://okwave.jp/qa/q5617517.html A列には、Shift_JISとutf-8の物が混ざっていますが、 どちらも、文字化けせずにタイトルを抽出することは出来ないでしょうか? ちなみにVisual Basicに関しては、よくわからない素人です。 まことに申し訳ありませんが、詳しく教えていただけないでしょうか? よろしくお願いします。

  • 検索のときのURLについて

    検索のときのURLについて教えてくださいませm(__)m たとえばグーグルで 男前 と検索したいとき直接検索窓に 男前 と入力すると http://www.google.com/search?hl=ja&q=%E7%94%B7%E5%89%8D&btnG=Google+%E6%A4%9C%E7%B4%A2&lr=lang_ja アドレスバーには結構長いURLが表示され、検索結果が出てきます。 でも直接アドレスバーに下記のようにURLを入れても http://www.google.com/search?hl=ja&lr=lang_ja&q=男前 ちゃんと検索されるんですね。 つまりお知りのほうの%E7%94%B7%E5%89%8D&btnG=Google+%E6%A4%9C%E7%B4%A2&lr=lang_jaを日本語に置き換えてアドレスに入力しても検索されます。 ヤフーでもできるんでしょうか? たとえばやはり 男前 なら ヤフーだと http://search.yahoo.co.jp/search?fr=slv1-tbtop&p=%c3%cb%c1%b0 に なります。 これを http://search.yahoo.co.jp/search?fr=slv1-tbtop&p=男前 と 入力するとぜんぜん違う表示になってしまいます(^^; %c3%cb%c1%b0 の部分を日本語に変えてアドレスバーに入力 しても検索はできません。 ヤフーにはグーグルみたいなやり方はないんでしょうか? ご存知の方がいましたら、よろしくお願いいたしますm(__)m

  • Google検索をして、その下に検索結果(URL)

    A列1行から、ずっと右へキーワードが記入されています。 調べたいキーワードは、400近くあります。 その1行目にあるキーワードをGoogle検索をして、 検索結果のURLだけを、そのキーワードの下に表示させたいです。 検索結果は全部で10ページくらい、大体100個のURLになるかと思います。 (youtube動画や広告などは含めないです) このようなことは、Excelのマクロでできるでしょうか? できるとしたら、どのようなマクロの記述になるでしょうか? Excel2016です。 よろしくお願いいたします。

  • Googleスプレッドシートフィルター結果の編集

    Googleスプレッドシートにおいて、 Aというシートにフィルターをかけて、Bのシートに結果を出力するように関数を入れました。 =FILTER(A!A6:F300,A!D6:D300="△") という関数をBシートに入力し、"△"を含む行の結果をAシートから引っ張っています。 このBシートに表示されたフィルター結果のセルの文字を編集しようとすると、 「エラー:配列結果は**(編集元のセル番号)のデータを上書きするため、展開されませんでした。」 と出て、上書きできません。 元データを変更させないために、こういったエラーになっているとは思うのですが、 このフィルター結果内で編集を行い、元データにも同期される、ということは可能なのでしょうか。 それとも、そもそもフィルターというのは閲覧するもので、編集するものではないのでしょうか。 ・Googleスプレッドシートのフィルタ結果内で文字の編集は可能なのか ・できないとしたら、普通はどんな代替案を使うのでしょうか すみませんがご存じの方があれば、教えていただけないでしょうか。

  • 検索結果のURLの違い

    初めて質問させていただきます。 GoogleやYahooでの検索結果でそのサイトのURLが表示されますよね? そのURLについてなのですが、サイトによって http://○○○○.jp(スラッシュなし) http://○○○○.jp/(スラッシュあり、ファイル名なし) http://○○○○.jp/index.html(スラッシュ、ファイル名あり) と同じファイルを指し示しているにも関わらず、表記の形式が分かれて いる事がありますが、これはバックリンクの多さによって決定されて いるのでしょうか?

  • FirefoxのURLらんでで検索すると文字化ける

    Firefox最新版をつかってます。 URLのところにに、「あああああ」といれると、 http://www.google.com/search?ie=UTF-8&oe=UTF-8&sourceid=navclient&gfns=1&q=%82%A0%82%A0%82%A0 となり、文字化け?となってしまいます。 どなたかお助けください・ //----------------------------------------------------------- いつからそうなあったのかはよく覚えてません。 一度、入れ直したのですが、結果は同じでした。 //----------------------------------------------------------- なお、vista ultimate 64bitです。 よろしくお願いします。

  • Firefox+カスペルスキーで検索結果に飛べない

    Windows7で、Firefox42.0とカスペルスキーインターネットセキュリティを使っています。 Google検索結果のページで、検索結果のサイトに飛ぼうとすると、添付のように404エラーになります。 https://www.google.co.jp/url?url= によるリダイレクト時に誤ったURLが渡されてGoogle側で404になっています。ところが、このエラーページのアドレスバーでEnterを押して、同じURLでもう一ページ開くとちゃんと目的のページに飛びます。 例えばこんなURLです。先頭hを削除して書くと、 ttps://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&ved=0CBwQFjAAahUKEwidxOCi8vrIAhXitqYKHWKKAd8&url=https%3A%2F%2Ftwitter.com%2F%3Flang%3Dja&usg=AFQjCNEAHBduFtoZBnWjmQNjwFYXk897Mw&sig2=9aMOGQnPHE-9FPcCcwTa3g&bvm=bv.106923889,d.dGo また、もとの検索結果のページで、リンク先のURLを右クリックメニューで「リンクのURLをコピー」して、そのURLのページを開くと、これも目的のページに飛びます。検索結果のリンクを直接クリックしたときだけエラーです。 試したこと: 1.他のブラウザ。IE11とChromeは問題なし 2.Firefoxのカスペルスキーアドオンを無効に⇒だめ 3.カスペルスキーの機能全体を一時停止してFirefox再起動⇒問題なし 4.カスペルスキーの機能全体を有効のままで、ウェブ保護だけオフにしてFirefox再起動⇒だめ 5.Firefoxをセーフモードで起動⇒検索結果リンクのクリックが無反応。リンクを右クリックして「新しいタブで開く」では開けるが同じ404エラー 6.キャッシュをクリアしてFirefoxを再起動⇒だめ 7.新規プロファイルを作成してそれを使ってFirefox起動⇒セーフモードと同じ ちょっとググった限りでは情報も無くお手上げです。 カスペルスキーには問い合わせを出してみようと思いますが、他に何かできることはありますでしょうか?

専門家に質問してみよう