プログラムによるWebブラウジングの方法

本サイトでは、プログラムやツールによってネットサーフィン(Webブラウジング)する方法や、 Webページから必要な情報を抽出したりする方法について解説しています。

具体的には、

  • プログラムでWebブラウザを操作する方法
  • ブラウザを組み込んだアプリケーションを作成する方法
  • Webスクレイピング(Webページから必要な情報を解析して抜き出す)する方法
  • Webサービス(Google Apps Script等)を使った、Webアクセス/スクレイピングする方法
について、それぞれの実現方法を解説します。

Webブラウジングの方法

プログラムによりWebブラウジングする方法として、大きく以下の3つの方法があります。

  • プログラムでブラウザを操作する方法
  • アプリケーションにWeb機能を組み込む方法
  • Webブラウジングを自動で行えるツールを使う方法

ブラウザを操作するアプリケーションの開発

ExcelのVBAや、C#/VBでプログラムすることでInternetExplorerを操作できます。
Webブラウザを操作するライブラリのSeleniumを使うことで、ChromeやEdgeブラウザ等を操作する事ができます。

ブラウザ機能を組み込んだアプリケーションの開発

ExcelのVBAや、C#/VBには、Web機能をもったコントロールがあります。
アプリに組み込むことで、Webの操作が行えます。
また、ElectronやTauri等を使う事でもアプリケーションが作成できます。

ブラウザを操作できるアプリケーションを使う

ブラウザを操作できるアプリケーションを使って、自由にブラウジングを行うことができます。

Webアクセスを行えるWebアプリケーションを利用する

Googleが提供しているGoogleAppScriptでは、Webのアクセスを行うプログラムが行えます。

InternetExplorerを操作する

Microsoftの開発環境であるVisualStudio(C#/VB.NET)や、ExcelのVBAにより、 InternetExplorerを操作するプログラムが作成できます。
プログラムにより、InternetExplorerの起動、ページの表示、文字入力やクリックする、などの操作が行えます。

VisualStudio(VB.NET/C#)でInternetExplorerを操作する方法はこちらをご覧ください。
VisualStudioでInternetExplorerを操作する方法

Excel(VBA)でInternetExplorerを操作する方法はこちらをご覧ください。
Excel VBAでInternetExplorerを操作する方法

InternetExplorer操作の実装サンプル

ブラウザを操作するライブラリを使う(Selenium)

Webブラウザを操作するライブラリのSeleniumを使うことで、各種ブラウザを操作するプログラムが作成できます。
動作するOSは、Windows、Linux、Mac。
開発言語はC#、Java、PHP、Python、Ruby、Scala、等が使えます。

使用する方法はこちらをご覧ください。
Seleniumによるブラウザーの自動操作
WebBrowserの実装サンプル

WebBrowserコントロールを使う

VisualStudioやExcelVBAに用意されている「WebBrowserコントロール」を使うことで、
Webブラウザの機能をもったWindowsアプリケーションを作成できます。
アプリケーション内にブラウザ機能を組み込み、サイト表示や文字入力やクリックなどのWeb操作が行えます。
開発言語はC#またはVB.NET。Excelの場合はVBAです。
※VisualStudioでは「WebBrowserコントロール」よりも新しい「WebView2コントロール」が使われています

VisualStudio(VB.NET/C#)でWebBrowserコントロールを使用する方法はこちらをご覧ください。
VisualStudioでWebBrowserコントロールを使用する方法について

Excel(VBA)でWebBrowserコントロールを使用する方法はこちらをご覧ください。
Excel VBAでWebBrowserコントロールを使用する方法について

WebBrowserの実装サンプル

WebView2コントロールを使う

VisualStudioに用意されている「WebView2コントロール」を使うことで、
Webブラウザの機能をもったWindowsアプリケーションを作成できます。
アプリケーション内にブラウザ機能を組み込み、サイト表示や文字入力やクリックなどのWeb操作が行えます。
開発言語はC#またはVB.NETです。

開発環境を整えるために必要な手順はこちらを参照ください。
WebView2コントロールの準備

基本的な使い方についてはこちらを参照ください。
WebView2コントロールでの操作
WebView2コントロールとWebページ(JavaScript)の連携

WebBrowserの実装サンプル

Google App Scriptを使う

GoogleのWebサービスである「Googleスプレッドシート」と、 Webアクセスを行える「Google Apps Script」を使って、Webスクレイピングを行えます。

開発言語はJavaScriptです。
ブラウザを使ってコーディングから実行まで行えるので、環境構築作業が不要です。

Webページを表示したり直接操作することはできませんが、GET等のリクエスト送信とレスポンス取得が行えますので、 ページの情報を取得して加工するアプリが作成できます。
例えば、WebAPI(Json)が公開されているサイトからデータを取得し、スレッドシートに張り付ける、等。

使用する方法はこちらをご覧ください。
Google Apps Script (GAS)について

GoogleAppScriptの実装サンプル

Chrome拡張機能を使う

Chromeを使っている人は、Chromeウェブストアから便利な拡張機能をインストールして使っていると思いますが、
この拡張機能は自作することもできます。
自分がブラウザ操作を行わせたい内容で拡張機能を作りましょう。

Power Automate for desktopを使う

MicrosoftのRPAソリューションで、ブラウザの自動操作やデスクトップアプリの自動操作等を行えます。

操作内容やパラメータを「フロー」として設定して動作させますので、プログラムの知識がなくても作成が行えます。
また、操作内容の記録・再生が行えますので、複雑な自動操作でなくて構わないときは、
本ツールを使うのが手っ取り早いです。

OS/開発言語別、Web操作方法

ブラウザを操作するアプリケーションの開発

操作できるブラウザ 対応OS 開発環境 開発言語
InternetExplorer操作 Windows Visual Studio/VBA C#、VB.NET、VBA
Chrome、Edge、Firefox、Safari、等 Windows/macOS/Linux 各種言語向けの開発環境
Selenium WebDriverライブラリ
C#、VB.NET、Java、JavaScript、Python、Ruby、等

ブラウザ機能を組み込んだアプリケーションの開発

組み込むブラウザ機能 対応OS 開発環境 開発言語
WebBrowserコントロール
(InternetExplorer)
Windows Visual Studio/VBA C#、VB.NET、VBA
WebView2コントロール
(Edge)
Windows Visual Studio C#、VB.NET
独自ブラウザ
(Chromium)
Windows/macOS/Linux Electronアプリを使用 Node.js/html/JavaScript
独自ブラウザ
(各OSに適したブラウザエンジン)
Windows/macOS/Linux Tauriアプリを使用 Rust/Node.js/html/JavaScript

ブラウザを操作できるアプリケーション

アプリケーション名 操作できるブラウザ 動作環境/開発環境 開発言語 備考
Chrome拡張 Chrome Chromeブラウザ
Chrome DevTools (Recorder) Chrome Chromeブラウザ
Power Automate Desktop Edge、Chrome Windows10以降
Automator macOS
puppeteer Chrome Windows/Linux/macOS Node.js
Playwright Chrome、Edge、Firefox、Safari Windows/Linux/macOS Node.js/TypeScript/JavaScript

Webアクセスを行えるWebアプリケーション

Webサービス 動作環境/開発環境 開発言語
Google App Script Webブラウザ JavaScript/HTML