VBA для извлечения из URL - PullRequest
       2

VBA для извлечения из URL

0 голосов
/ 23 октября 2018

Я пытаюсь извлечь номер последней страницы из URL, я хочу получить максимальное количество страниц.

ниже мой URL

https://www.justdial.com/Upleta/Cosmetic-Wholesalers-in-Upleta-Lati-Plot

ниже приведен код VBA, который я пробую, но кое-где проблема

Dim sResponse As String, html As HTMLDocument
Dim url As String
Dim N As Long
Dim X As Long


        url = ActiveCell.Value
        With CreateObject("MSXML2.XMLHTTP")
            .Open "GET", url, False
            .setRequestHeader "If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT"
            .send
            sResponse = StrConv(.responseBody, vbUnicode)
        End With
        Set html = New HTMLDocument

        With html
            .body.innerHTML = sResponse
        ActiveCell.Offset(1, 0) = .getElementByClass("Jpag").innerText
        ActiveCell.Offset(1, 0) = .getElementById("srchpagination").innerText
        ActiveCell.Offset(0, 1).Select
        End With

, пожалуйста, кто-нибудь, помогите мне

1 Ответ

0 голосов
/ 23 октября 2018

Вы можете собрать nodeList ссылок на страницы, а затем взять последний, кроме одного индекса, то есть максимальное число страниц.Вы можете сделать это с помощью комбинатора потомков CSS, чтобы указать идентификатор родительского элемента, а затем элементы тега a внутри.Я использую -2, чтобы получить правильный индекс, так как nodeList имеет индексирование на основе 0.

Debug.Print html.querySelectorAll("#srchpagination a").item(html.querySelectorAll("#srchpagination a").Length - 2).innerText
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...