当ページでアクセス数の多いInternet Explorer自動操作・スクレイピングの記事をまとめます
他サイトに比べ圧倒的な記事量、シンプルな作りのページなので理解しやすいと考えます
事前準備~IE起動、終了 基本的な動き
Webページをクリックやログインする
- 基本のクリック
・getElementById
・getElementsByName
・getElementsByClassName - Submitボタン
- 画像ボタン(altタグ、srcタグ)
- aタグ
- id要素やName要素が存在しない場合
- BASIC認証をログインする
- 現在開いているタブとは別タブでページを開く【Navigate2】
Webページのデータを取得する
- データを取得する
・innerText
・innerHTML
・outerText
・outerHTML - ページ全体のデータを取得する
・head要素
・Body要素 - ページ情報を取得する
・Webページのタイトル
・WebページのURL - 要素数を数える
- ページ内のリンクURLを全て取得する
- Webページの子要素を取得する
- クッキー情報を取得する
- テーブルデータからデータを取得する
- セレクトボックスの選択中のデータを取得する
- CSSセレクタからデータを取得する(GetElementsByIDのように)
- CSSセレクタからデータを取得する(GetElementsByTagNameのように)
- 画面キャプチャ・スクリーンショットを行う
Webページへ入力、選択、解除する
Webページのフレーム(frame)を処理する
Webページの厄介なJavaScript関連を処理する
Webページへアップロード/ダウンロード
実行時エラーに負けない
- 全般的なエラー対策
- プロセスを強制終了させる
- リモートサーバーエラー対策(開いているIEを掴む(古いウィンドウから)/最新ウィンドウから)
- キャッシュクリアする
- キャッシュクリアの違いを理解する「DeleteUrlCacheEntry」と「ClearMyTracksByProcess」
- Webページに指定要素があるかどうかチェックする
- SendKeyで無理やり突破する
- 半角スペースが削除できない場合
その他
- IEの基礎機能を使用する
・IEの最初のページを表示
・IEの戻るをクリックする
・IEの進むをクリックする
・IEの検索をクリックする - IEの各種バーを操作(表示・非表示)する
- 画面表示サイズを変更する
・IEを最大化をする
・IEを最小化をする
・IEを元のサイズに戻す - フルスクリーンで表示する
- シアターモードで表示する
- 画面表示サイズ変更可否を設定する
・ウィンドウサイズを変更可否設定
・ウインドウの表示位置設定 - 画面表示ウィンドウの倍率の設定をする
- IEを最前面表示をする
- IEを再読込(リフレッシュ)する
- IEのVerを取得する
その他
Internet Explorerを使用して、Webスクレイピングは敷居が高い風に捉えられますが、
上記のように、パーツ化して組み合わせ処理するだけです。
Web上のデータを触りたい要望は会社様でも個人様でも多いと思います。
VBA IE操作を覚えて効率化しませんか?
作成が大変であれば弊社で代行開発も可能です。お気軽にお問い合わせください。
今後に見据えて、SeleniumBasicの記事もおすすめです。
VBAでEdge/Chromeを操作する機能のまとめ(逆引き目次)【Selenium】
コメント