0

一部のサイトからデータをスクレイピングするために作成したコードを使用していますが、新しいサイトをリストに追加しようとすると、次のエラーが表示されます: オブジェクトはこのプロパティまたはメソッドをサポートしていません。他のコードとまったく同じコードを使用できますが、今回はこのメッセージが表示されます。理由を知っている人はいますか? elementbyclassname を取得しようとすると、エラー メッセージが表示されます。

Sub Zelo()
    Dim dia As String
    Dim mes As String
    Dim ano As String

    dia = "14"
    mes = "09"
    ano = "13"

    Dim cont As Integer
    Dim i As Integer
    Dim URL As String
    Dim IE As Object
    IE = CreateObject("InternetExplorer.Application")
    IE.Visible = True

    URL = "http://www2.zelo.com.br/weddingListSearch.aspx?dsName=&dsLocation=&dtWedding=" & dia & "/" & mes & "/" & ano & "&idproduct=&qty="

    IE.Navigate(URL)

    Do
        DoEvents()
    Loop Until IE.READYSTATE = 4

    cont = 0

    With IE
        For Each ele In .document.getelementsbyclassname("name") ' Here I have the error message
            If ele.classname = "place" Then
                cont = cont + 1
            End If
        Next ele
    End With

    Sheets("Plan2").Range("A2") = cont

    IE.Quit()
End Sub
4

1 に答える 1

4

getelementsbyclassnameInternet Explorer/WebBrowser コントロールのような方法はありません。

GetElementsByTagName指定されたタグ名を持つすべての要素を取得する代わりに使用したいと思います。

編集 :

更新されたコード サンプル:

With IE
    For Each ele In .document.GetElementsByTagName("td")
        If ele.classname = "place" Then
            cont = cont + 1
        End If
    Next ele
End With
于 2013-09-12T12:09:06.137 に答える