人気記事ランキング全ページ一覧キーワード別記事一覧お問い合わせきむおばです。関東在住の40代の主婦です。契約社員・派遣・フリーランスの3足のわらじ中。フリーランスでは、ファイナンシャルプランナーとしてライターやセミナー講師をしたり、サイト制作やプログラムを作ったりしています。お金・子育て・趣味のこと...何でも気ままに書く雑記ブログです。目標は、ライター・サイト制作・広告他の収入バランスを整えること。ブログ収入UPに今年も力を入れます。VBAでChromeブラウザ内をWebスクレイピングする方法と注意点2019/8/2(金)2019/8/5(月)きむおばExcelVBAからIEの操作はいろいろと試してきましたが、普段使用しているChromeブラウザから必要な情報を収集できる方法を探ってみました。VBAでChromeブラウザ内をスクレイピングするためには、次の下準備が必要です。Basicとは、VBAからChromeを簡単に操作できるようになるライブラリ(追加機能がまとめられたファイル)です。Basicをダウンロードしてインストールをしておきましょう。Basic内のCromeドライバーと使用中のChromeのバージョンが異なると、エラーが発生してしまいます。そのため、使用中のChromeのバージョンを「ヘルプ」→「Chromeについて」メニューで選択して確認しましょう。Driverを下のリンクからダウンロードします。Basicフォルダ内へコピーをして、上書きしてしまえばOKです。Libraryの参照設定をしておきます。Libraryを見つけてチェックを入れれば完了です。VBAの中から、簡単にChromeをスクレイピングできるようになりました。ExcelからWebの情報を取得できるのはWEBSERVICE関数WEBSERVICE関数を使えば、ExcelからWebデータを取得することが簡単にできます。WEBSERVICE(“URL”)WEBSERVICE関数の引数はURLのみ。データを取得したいURLを設定するだけです。VBAでSelenium.ChromeDriverを使えばChromeのスクレイピングが簡単Selenium.ChromeDriverを変数宣言すると、使用できるようになります。Selenium.ChromeDriverで便利なメソッド一覧GetURL指定してブラウザ起動Closeブラウザを閉じるActionsClick,DoubleClick,Sendkey他アクション設定FindElementByClassClass名で要素を検索FindElementByIdId名で要素を検索TakeScreenshotスクリーンショットSelenium.ChromeDriverを使えば、指定したURL内の必要な情報だけを取得してExcelシートに設定することが自動化できます。サンプルコードを置いておきます。とある1ページ内に画像が20ずつ公開されているサイトから、画像タイトルを抜き出してセルに自動入力していくプログラムです。SubWebスクレイピング利用時の注意点Webスクレイピングを使って、天気や株価、商品情報などを収集している方がいますね。逮捕されて20日間も拘留された例もあるんですよね...警察の無知ゆえの事件だったように思いますが。>>マスコミ報道だけでは分からない岡崎図書館事件データ解析ではPythonが主流かもしれませんが、ちょっとしたデータ収集であれば、日ごろ使い慣れたVBAでさっと作ってしまった方が時短できるかもしれません。個人的で常識の範囲で使用しましょうね。相手のサーバーに負荷を掛け過ぎないよう気を付けましょう。「Excel入力が早すぎて神業!」と言われるためにやっている地味で簡単なことママに便利な洋服レンタル「エディストクローゼット」5箱目着用レビューこんにちは、きむおばです。関東在住の40代主婦。手のかかる高校生と小学生を子育て中の母でもあります。契約社員と派遣社員の傍らファイナンシャルプランナーとしてライターをやったり、サイトやプログラム制作の受注もしている兼業主婦ブロガー。お金のこと、子育てのこと、趣味のこと、悩んでいること...何でも気ままに書く雑記ブログです。きむおばブログにたどりついたあなたのお役に少しでも立てたらうれしいな。子どもが中学に入学した時点で親がやっておきたいこと。タグ40代で肌断食をしてたら1年後に首からデコルテに小さなイボのようなものが大量にできてしまった残念な体験談2020/2/19秋冬の私服と通勤服の定番化。