Я пытаюсь создать скрипт в vba, который будет искать любую ссылку contact
или contact us
на любом заданном веб-сайте, чтобы получить квалифицированную/полезную ссылку. Мой текущий скрипт анализирует контактную ссылку, но в большинстве случаев они не подходят для повторного использования позже, что означает неработающие.
Я пробовал до сих пор:
Sub FetchCustomizedLink()
Dim Http As New XMLHTTP60, Html As New HTMLDocument
Dim link As Variant, links As Variant, targetlink$
links = Array( _
"http://www.innovaprint.com.sg/", _
"https://www.plexure.com.sg/", _
"http://www.mount-zion.biz/", _
"https://stackoverflow.com/" _
)
For Each link In links
targetlink = None
With Http
.Open "GET", link, False
.setRequestHeader "User-Agent", "Mozilla/5.0"
On Error Resume Next
.send
On Error GoTo 0
Html.body.innerHTML = .responseText
End With
With Html.querySelectorAll("a[href]")
For I = 0 To .Length - 1
If InStr(1, .item(I).innerText, "contact", 1) > 0 Then
targetlink = .item(I).getAttribute("href")
Exit For
End If
Next I
End With
Debug.Print targetlink
Next link
End Sub
Вывод, который я получаю:
about:/contact.html
https://www.plexure.com.sg/contact
about:contactus.html
https://stackoverflow.com/company/contact
Вывод, который я хочу получить:
http://www.innovaprint.com.sg/contact.html
https://www.plexure.com.sg/contact
http://www.mount-zion.biz/contactus.html
https://stackoverflow.com/company/contact
Как превратить неработающие ссылки в качественные?
select case
может быть идеальным вариантом. Я пробовал с операторомLike
, но мне кажется, что обрабатывать несколько типов шаблонов намного сложнее. То, что вы подумали, кстати, правильно. - person MITHU   schedule 13.04.2020about:/
илиabout:
на элемент с массивом ссылок? - person Ryan Wildry   schedule 13.04.2020