セレンラッパーを使用してvbaでhtmlから特定の要素を取得するにはどうすればよいですか?

アレックス

セレンラッパー付きのvbaを使用して、htmlからテーブルの8番目のセルだけを呼び出すにはどうすればよいですか?私はこれらの貯水池の日付をExcelのセルに印刷しようとしています。これは、検索によって、3つの異なる日付で3回拘束されている車両が返された例です。

ビューソース:https//www.autoreturn.com/indianapolis-in/find-vehicle/results

私は次の.Findelementようないくつかの異なるバリエーションを試しました

Sheets("VinCheck").Cells(i, "D").Value = chromeDriver.FindElementByClass("input-item").Text

しかし、何も機能していないようです。これは、一見空白の値を返すだけです。

QHarr

の疑似クラスセレクターを使用して:nth-of-type、列番号(nth td行内のセル)を指定できます。

Option Explicit
Public Sub SearchVin()
    Dim d As WebDriver, hTable As Object, ws As Worksheet, t As Date
    Dim headers(), vin As String
    Const MAX_WAIT_SEC As Long = 10
    Set d = New ChromeDriver
    Set ws = ThisWorkbook.Worksheets("Sheet1")
    Const URL = "https://www.autoreturn.com/indianapolis-in/find-vehicle/"

    vin = "1G4HD57287U218052"

    With d
        .Start "Chrome"
        .get URL

        .FindElementById("vin").SendKeys vin     '<== vin

        Application.Wait Now + TimeSerial(0, 0, 1)

        .FindElementByCss("[onclick='submitVin()']").Click

        t = Timer
        Do
            DoEvents
            On Error Resume Next
            Set hTable = .FindElementByCss("table")  'use tag name of results table to target table
            On Error GoTo 0
            If Timer - t > MAX_WAIT_SEC Then Exit Do
        Loop While hTable Is Nothing
        'do something with results
        Dim towDates As Object, towDate As Object
        If Not hTable Is Nothing Then
            Set towDates = .FindElementsByCss("table tr.results-row td:nth-of-type(9)")
            For Each towDate In towDates
                Debug.Print towDate.Text
            Next
        End If
        .Quit
    End With
End Sub

結果は次のようになります。


行を制限する

もちろん、別のnth-of-typeセレクターを追加して、取得する行を制限することもできます。行2の2つの日時が必要だとします。

table tr:nth-of-type(2).results-row td:nth-of-type(9)

クラス"."セレクターも使用しているため、上記のセレクターで返される行を制限して、ヘッダー行を除外していることに注意してください


最後の子の使用:

目的の列はtd行の最後のセル(最後の列)であるため、たとえばの:last-child代わりに疑似クラスセレクターを使用できます。:nth-of-type

Set towDates = .FindElementsByCss("table tr.results-row td:last-child")

そして

table tr:nth-of-type(2).results-row td:last-child

単一の戻り値とリスト:

単一の値を期待している場合は、cssセレクターを

.FindElementByCss

例えば

.FindElementsByCss("table tr:nth-of-type(2).results-row td:last-child")

値のリストを期待している場合は、cssセレクターを

.FindElementsByCss

例えば

.FindElementsByCss("table tr.results-row td:last-child")

ファーストチャイルドセレクター:

また:first-child、最初の結果行を取得するなど、セレクターにアクセスできることにも注意してください


テーブル全体を書き出す:

表全体を書きたい場合は、ここで私の答えを参照してください

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

セレンウェブドライバーを使用してクラス内のreact要素の属性を取得するにはどうすればよいですか?

分類Dev

セレンPythonを使用して要素のすべてのCSSプロパティを取得するにはどうすればよいですか?

分類Dev

この要素を取得し、セレンでクリックするにはどうすればよいですか?

分類Dev

最新の日付スタンプを使用してJOINからレコードセットを取得するにはどうすればよいですか?

分類Dev

パンダを使用して選択した行の合計からパーセンテージを取得するにはどうすればよいですか?

分類Dev

Googleスプレッドシートの特定のセルからデータを取得して参照するにはどうすればよいですか?

分類Dev

特定の要素のクリックイベントを使用してdivからクラスを削除するにはどうすればよいですか?

分類Dev

Pythonを使用してWebページからハイパーリンクのテキスト要素を取得するにはどうすればよいですか?

分類Dev

セレンTouchActionspythonを使用して特定の要素内の座標をタップするにはどうすればよいですか?

分類Dev

beautifulsoupを使用してhtmlタグの特定のクラスからデータを取得するにはどうすればよいですか?

分類Dev

特定のクラスタグを使用して各スパンからテキストを取得するにはどうすればよいですか?

分類Dev

セレンを使用してCSSクラス名を取得するにはどうすればよいですか?

分類Dev

Jsonbを使用して特定の日付からメッセージを取得するにはどうすればよいですか?

分類Dev

セレンを使用して画面に存在するすべての要素のテキスト値を取得するにはどうすればよいですか?

分類Dev

ユーザーのギャラリーから画像を取得し、それをビットマップに変換してから、それを使用してカラーパレットを生成するにはどうすればよいですか?

分類Dev

セレンから要素の属性を取得するにはどうすればよいですか?

分類Dev

pydrillerを使用して特定のブランチからコミットを取得するにはどうすればよいですか?

分類Dev

xpath 1.0を使用してXML配列からパターンで始まる要素を取得するにはどうすればよいですか?

分類Dev

FORループを使用して配列から特定の行インデックス番号を取得するにはどうすればよいですか?

分類Dev

jsonpathを使用してjsonから複数の要素を取得するにはどうすればよいですか?

分類Dev

curlを使用してKeycloakからクライアントシークレットを取得するにはどうすればよいですか?

分類Dev

HTMLからElementsByClassNameを取得してJavaScript配列にプッシュするにはどうすればよいですか? このアレイにアラートを送信するにはどうすればよいですか?

分類Dev

jqueryを使用して特定の要素を取得するにはどうすればよいですか?

分類Dev

jsonpath + Pythonを使用して特定の要素を取得するにはどうすればよいですか?

分類Dev

「getElementByClassName()」を使用してVBAのHTML要素を解析するにはどうすればよいですか?

分類Dev

パラメータを使用してDjangoのURLまたはHTMLテンプレートをレンダリングするAJAXコールバック関数を取得するにはどうすればよいですか?

分類Dev

VBAを使用してxmlファイルのCDATAセクションから特定の情報を抽出するにはどうすればよいですか?

分類Dev

テレソンを使用して特定のプライベートチャネルの更新を取得するにはどうすればよいですか?

分類Dev

アルパインでpsコマンドを使用して特定のPIDのプロセス名を取得するにはどうすればよいですか?

Related 関連記事

  1. 1

    セレンウェブドライバーを使用してクラス内のreact要素の属性を取得するにはどうすればよいですか?

  2. 2

    セレンPythonを使用して要素のすべてのCSSプロパティを取得するにはどうすればよいですか?

  3. 3

    この要素を取得し、セレンでクリックするにはどうすればよいですか?

  4. 4

    最新の日付スタンプを使用してJOINからレコードセットを取得するにはどうすればよいですか?

  5. 5

    パンダを使用して選択した行の合計からパーセンテージを取得するにはどうすればよいですか?

  6. 6

    Googleスプレッドシートの特定のセルからデータを取得して参照するにはどうすればよいですか?

  7. 7

    特定の要素のクリックイベントを使用してdivからクラスを削除するにはどうすればよいですか?

  8. 8

    Pythonを使用してWebページからハイパーリンクのテキスト要素を取得するにはどうすればよいですか?

  9. 9

    セレンTouchActionspythonを使用して特定の要素内の座標をタップするにはどうすればよいですか?

  10. 10

    beautifulsoupを使用してhtmlタグの特定のクラスからデータを取得するにはどうすればよいですか?

  11. 11

    特定のクラスタグを使用して各スパンからテキストを取得するにはどうすればよいですか?

  12. 12

    セレンを使用してCSSクラス名を取得するにはどうすればよいですか?

  13. 13

    Jsonbを使用して特定の日付からメッセージを取得するにはどうすればよいですか?

  14. 14

    セレンを使用して画面に存在するすべての要素のテキスト値を取得するにはどうすればよいですか?

  15. 15

    ユーザーのギャラリーから画像を取得し、それをビットマップに変換してから、それを使用してカラーパレットを生成するにはどうすればよいですか?

  16. 16

    セレンから要素の属性を取得するにはどうすればよいですか?

  17. 17

    pydrillerを使用して特定のブランチからコミットを取得するにはどうすればよいですか?

  18. 18

    xpath 1.0を使用してXML配列からパターンで始まる要素を取得するにはどうすればよいですか?

  19. 19

    FORループを使用して配列から特定の行インデックス番号を取得するにはどうすればよいですか?

  20. 20

    jsonpathを使用してjsonから複数の要素を取得するにはどうすればよいですか?

  21. 21

    curlを使用してKeycloakからクライアントシークレットを取得するにはどうすればよいですか?

  22. 22

    HTMLからElementsByClassNameを取得してJavaScript配列にプッシュするにはどうすればよいですか? このアレイにアラートを送信するにはどうすればよいですか?

  23. 23

    jqueryを使用して特定の要素を取得するにはどうすればよいですか?

  24. 24

    jsonpath + Pythonを使用して特定の要素を取得するにはどうすればよいですか?

  25. 25

    「getElementByClassName()」を使用してVBAのHTML要素を解析するにはどうすればよいですか?

  26. 26

    パラメータを使用してDjangoのURLまたはHTMLテンプレートをレンダリングするAJAXコールバック関数を取得するにはどうすればよいですか?

  27. 27

    VBAを使用してxmlファイルのCDATAセクションから特定の情報を抽出するにはどうすればよいですか?

  28. 28

    テレソンを使用して特定のプライベートチャネルの更新を取得するにはどうすればよいですか?

  29. 29

    アルパインでpsコマンドを使用して特定のPIDのプロセス名を取得するにはどうすればよいですか?

ホットタグ

アーカイブ