Я пытаюсь получить от даты до даты и год с даты возврата с сайта http://us.spindices.com/indices/equity/sp-oil-gas-exploration-production-select-industry-index в таблицу Excel с помощью VBA. Проблема в том, что в коде страницы нет «id =», что, я понимаю, сделает этот процесс намного проще. Существует также вопрос о том, какой период времени (от года к дате или месяца до даты) виден, но я был бы доволен соскабливанием только значений MTD на данный момент.scrape html без id в vba
Вот мой код:
Sub Get_Change()
'attempting to scrape Barclay's website
Dim appIE As Object
Dim MyVar As String
Set appIE = CreateObject("internetexplorer.application")
With appIE
.Navigate "http://us.spindices.com/indices/equity/sp-oil-gas-exploration-production-select-industry-index"
.Visible = True
End With
Do While appIE.Busy
DoEvents
Range("A1").Value = "Working..."
Loop
Set TDelements = appIE.document.getElementsbyClassName("performance-chart-table")
For Each TDelement In TDelements
If TDelement.class = "change" Then
MyVar = TDelement.class.innerText("Value")
End If
Next
Range("A1").Value = MyVar
appIE.Quit
Set appIE = Nothing
End Sub
Если я могу получить путь, чтобы установить переменную «» MYVAR к текущему МПД или значения с начала года, я буду делать, но я с трудом потому что для любого из этих значений нет уникального идентификатора. Есть идеи?
Ничего себе это здорово, спасибо! Когда я запускаю код, я получаю ошибку во время выполнения 91; есть ли объект, который мне нужно выбрать в библиотеке ссылок, чтобы он выполнялся правильно? – DangeRuss
Строка 34 - та, которая заканчивается .querySelectorAll (". Change"). Я googled, и я не знаю точно, как это исправить ... – DangeRuss
IE11 Ошибка 91 - это «объектная переменная или с переменной блока, которая не установлена», кстати – DangeRuss