Excelでスクレイピングする方法

反応する:

コメント

ご存知でしたか? ウェブスクレイピング Excelで? Power Query そして VBA複雑なツールを使用せずに、データのインポート、構造化、更新を行うことができます。

Excelでウェブからデータを抽出することは完全に可能です。
Excelでウェブからデータを抽出することは完全に可能です。©Christina pour Alucare.fr

Power Queryを使用してWebページをExcelにスクレイピングする方法

✅ Power Query Excelに組み込まれたツールです。データのインポート、変換、分析に使用されます。これを使用すると、次のことが可能です:

  • 🔥 ウェブ、ファイル、データベースなどからデータを取得する
  • 🔥 これらのデータをクリーンアップまたは変換する。
  • 🔥 データを自動的に読み込む。

これはExcelでスクレイピングを行う最も簡単な方法です。手順を確認しましょう。

ステップ1:インポートツールにアクセスする

Excel で、次の場所へ移動します。 データ > データを取得する > ウェブから.

新しいExcelシートを開き、「データ」→「データの取得」→「Webから」の順に選択します。
新しいExcelシートを開き、「データ」→「データの取得」→「Webから」の順に選択します。©Christina for Alucare.fr

ステップ2:ウェブページのURLを貼り付ける

抽出したいデータが含まれているサイトまたはページのアドレスを貼り付けてください。

サイトまたはターゲットページのアドレスを貼り付けます。
ターゲットサイトまたはページのアドレスを貼り付けます。©Christina pour Alucare.fr

ステップ3:「ナビゲーター」を操作する

検出されたテーブルが表示されるウィンドウが開きます。該当するテーブルまたはデータを選択してください。例:HTMLテーブル。

表またはデータを選択してください。
表またはデータを選択してください。©Christina pour Alucare.fr

ステップ4:データをExcelシートに読み込む

クリック 充電する データをExcelシートに直接インポートするため。

データをインポートするために読み込みます。
データをインポートするために読み込みます。©Christina for Alucare.fr

💡 ウェブサイトの最新情報を取得するには、データを更新してください。テーブルを右クリックしてください。 更新する.

VBAとExcelマクロでスクレイピングする方法

✅ VBA どこ Visual Basic for Applications Excelおよびその他のMicrosoft Officeソフトウェアに組み込まれたプログラミング言語です。以下の目的で使用されます:

  • 🔥 反復的なタスクを自動化する。
  • 🔥 マクロ、つまりExcelで実行される小さなプログラムを作成する。
  • 🔥 ウェブページを開き、テキストや表を取得して、直接Excelに貼り付ける。

より複雑ではあるものの、VBAは 高度な制御 : ページ間のナビゲーション、認証による接続、動的データの抽出など。

以下は、ページからHTMLテーブルを取得するマクロの例です:

Sub ScraperTableau() ' オブジェクトの宣言 Dim http As Object, html As Object Dim tableau As Object, ligne As Object, cellule As Object Dim i As Long, j As Long

    ' スクラップするページのURL Dim url As String url = "https://www.w3schools.com/html/html_tables.asp" ' HTTPオブジェクトの作成 Set http = CreateObject("MSXML2.XMLHTTP") http.Open "GET", url, False
    http.Send ' HTML コンテンツの読み込み Set html = CreateObject("HTMLFile") html.body.innerHTML = http.responseText ' 最初に見つかったテーブルの選択 Set tableau = html.getElementsByTagName("table")(0) ' 行と列のループ
    For i = 0 To tableau.Rows.Length - 1 For j = 0 To tableau.Rows(i).Cells.Length - 1 Cells(i + 1, j + 1).Value = tableau.Rows(i).Cells(j).innerText Next j Next i End Sub

👉 コードの説明: 

  • Dim http As Object, html As Object : WebリクエストとHTMLコンテンツを管理するためのオブジェクトの作成。
  • url = "..." : スクラップするサイトのURL。
  • http.Open "GET", url, False : ページを読み込むためのHTTPリクエストを送信します。
  • html.body.innerHTML = http.responseText HTML応答を操作可能なオブジェクトに挿入します。
  • Set tableau = html.getElementsByTagName("table")(0) : 対象は 最初の表 ページから
  • ダブルループ For i … For j … : 表の各セルを読み取り、Excel(対応するセル)に貼り付けます。

👉 VBAのスクラッピングにおけるユースケース

  • 認証が必要なページ (ログイン/パスワード)
  • 動的ページPower Query が動作しない場合。
  • 複数のテーブルを取得する 同じページ内を移動したり、複数のページ間を移動したりできます。
  • 自動化 : ボタンまたはトリガーを使用して、データの毎日の更新をスケジュールする。

Power Query 対 VBA:Excel でスクレイピングを行うにはどちらの方法を選ぶべきか?

選択 Power QueryVBA お客様のニーズに応じて行われます。最適な方法を選択するための簡単な比較表をご紹介します。

基準 Power Query VBA
使いやすさ とても簡単 複雑で、コードが必要
柔軟性 表形式のデータに限定 非常に柔軟で、完全な制御が可能
学習曲線 弱い 高い
ユースケース HTMLテーブルの高速抽出 複雑なページ、認証、
高度な自動化

➡ つまり、 Power Query は初心者や基本的な作業には最適ですが、 VBA は、特定のニーズを持つ上級ユーザー向けです。

ウェブスクレイピングのためのExcelの代替手段は何ですか?

Excelは便利ですが、制限があります。より野心的なプロジェクトには、強力な代替手段があります。

ノーコード/ローコードツール

それらはウェブデータを抽出することを可能にします コードを書かずに.我々は引用する:

  • ブライトデータ : プロフェッショナルで強力、かつスケーラブルなソリューション。
  • オクトパース : 使いやすく、シンプルなビジュアルインターフェースで、初心者にも最適です。
Brightは、AIとBIのための無制限のウェブデータインフラストラクチャです。
Brightは、AIとBIのための無制限のウェブデータインフラストラクチャです。©Christina for Alucare.fr

プログラミング言語

それらは可能にする ウェブサイトをスクレイピングする 非常に柔軟な方法で。複数のページを自動的に閲覧したり、認証が必要なサイトを管理したりすることができます。

複雑なプロジェクトに最適な強力なソリューションをお探しなら、 Pythonでウェブスクレイピング.

👉 Excelを性能、柔軟性、シンプルさの面で上回るソリューションを一目で見てみましょう。

ツール/言語 料金 複雑性 パワフル
Excel (Power Query) Office パックによって異なります 簡単 基本
Excel (VBA) 無料(Officeライセンス付き) 平均 平均
ブライトデータ 毎月のサブスクリプション 平均 非常に高い
オクトパース 毎月のサブスクリプション 簡単 平均
Python (BeautifulSoup、Scrapy) 無料 高い 非常に高い

Excelでスクレイピングを行う際に役立つツールやリソースは何ですか?

Excelでのスクレイピングをさらに進めたい場合は、他のツールと組み合わせることができます。 図書館 そしてその ブラウザ拡張機能.

例えば :

ウェブスクレイピングは合法か?

the ウェブスクレイピングは合法です 特定の条件下で。サイトの利用規約、知的財産権、およびデータの使用に関する遵守状況によって異なります。

💬 最後に、Excelでのスクレイピングは可能で、特に Power Queryより高度なニーズには、VBAが高度な制御を提供しますが、他のツールとしては ブライトデータ どこ パイソン より適している場合がある。

気に入りましたか?シェアする

このコンテンツはもともと フランス語で (すぐ下のエディタを参照)。DeeplやGoogle翻訳APIを使用して様々な言語で翻訳・校正されており、できるだけ多くの国で利用できるようになっています。この翻訳には毎月数千ユーロのコストがかかっています。もし100 %が完璧でない場合は、コメントを残していただければ修正いたします。校正や翻訳記事の品質向上にご興味のある方は、お問い合わせフォームからメールをお送りください!
私たちは、私たちのコンテンツを改善するためにあなたのフィードバックに感謝します。ご意見・ご感想は、お問い合わせフォームまたは下記までお寄せください。 あなたのコメントは、私たちのウェブサイトAlucare.frの品質を向上させるために常に役立ちます。


Alucareは独立系メディアです。Googleニュースのお気に入りに追加して応援してください:

ディスカッション・フォーラムにコメントを投稿する