Selenium(Edge/Chrome)

Selenium「Webページの要素数を数える」【ExcelVBA】

VBAでSeleniumBasicで自動操作で要素数を数えたい場合があります。
ページの要素が可変だった場合に処理を分岐させたい場合などに使います。

Webページの指定要素数を数えるサンプルコード

Dim driver As New Selenium.WebDriver
Public Sub test()
    Dim myBy As New By
    
    Dim sURL As String: sURL = "https://vba-create.jp/"
    
    driver.Start "chrome"
    driver.Get sURL
    
    '■Aタグの要素数を表示
    Debug.Print driver.FindElementsByTag("a").Count
    
    '■上記はTAGの場合です。TAG要素以外は以下参照。
    Debug.Print driver.FindElementsByClass("xxxxx").Count 'Class
    
End Sub


注意点

  • IE自動操作の場合は、.Lengthで調べる事が出来ましたが、SeleniumBasicの場合は.Countを使用します。
  • IEの要素数数える場合はLengthで0スタートでしたが、Countの場合1スタートです。

関連記事

SeleniumBasicについて

Internet Explorer11 のサポート期限が2022年6月までと、スクレイピング自体入れ替えていく必要があります。
今一番スムーズなのはSeleniumBasicを使用したスクレイピングと考えます。

但し、VBAでのネット記事は少なく困っている方も多いと思います。
弊社で代行開発も可能ですので、お気軽にご用命ください。

コメント

タイトルとURLをコピーしました