Веб-сканирование Accuweather - PullRequest
0 голосов
/ 02 мая 2018

Я хочу получить информацию о текущей погоде (88 в изображении) с веб-сайта

Проверьте изображение

https://www.accuweather.com/en/in/bengaluru/204108/weather-forecast/204108

Я использовал следующий код

Sub Get_Price()
Dim HTTP As New XMLHTTP60, HTML As New HTMLDocument
Dim post As HTMLDivElement

With HTTP
.Open "GET", "https://www.accuweather.com/en/in/india-weather", False
.send
HTML.body.innerHTML = .responseText
MsgBox .responseText
End With

For Each post In HTML.getElementsByClassName("panel-list cityforecast")
With post.getElementsByTagName("large-temp")
 If .Length Then R = R + 1: Cells(R, 1) = .Item(0).innerText
End With
Next post
End Sub

Пожалуйста, помогите, заранее спасибо

1 Ответ

0 голосов
/ 02 мая 2018

Попробуйте следующий подход, чтобы получить информацию, которую вы хотели бы проанализировать с этой страницы. Я использовал .querySelectorAll () в скрипте, чтобы сделать его кратким, но более эффективным. Дайте ему шанс.

Sub GetWeatherInfo()
    Dim HTTP As New XMLHTTP60, HTML As New HTMLDocument
    Dim post As Object

    With HTTP
        .Open "GET", "https://www.accuweather.com/en/in/bengaluru/204108/weather-forecast/204108", False
        .send
        HTML.body.innerHTML = .responseText
    End With

    Set post = HTML.querySelectorAll("#feed-tabs .large-temp")(0)
    MsgBox post.innerText
End Sub

Ссылка для добавления в библиотеку:

Microsoft XML, V6.0 ''or the version you have
Microsoft HTML Object Library

Кстати, прежде чем запускать скрипт, убедитесь, что я использовал правильный URL.

...