【发布时间】:2021-10-12 04:12:53
【问题描述】:
我正在尝试找出一种方法来使用 vba 中的 xmlhttp 请求从 webpage 获取图像。深入挖掘后,我注意到我可以使用此属性data-lazy-srcset 访问这些图像。但是,此属性会生成一组图像链接。我想做的是从数组中捕获第一个图像链接。
Sub GetImage()
Const Url = "https://rasamalaysia.com/grilled-honey-cajun-shrimp/"
Dim Http As Object, Html As HTMLDocument, oImage As Object
Set Html = New HTMLDocument
Set Http = CreateObject("MSXML2.XMLHTTP")
With Http
.Open "Get", Url, False
.setRequestHeader "User-Agent", "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.135 Safari/537.36"
.send
Html.body.innerHTML = .responseText
End With
Set oImage = Html.querySelectorAll("p > img")
Debug.Print oImage(0).getAttribute("data-lazy-srcset")
End Sub
当前输出:
https://rasamalaysia.com/wp-content/uploads/2021/06/honey-cajun-grilled-shrimp3.jpg 1200w, https://rasamalaysia.com/wp-content/uploads/2021/06/honey-cajun-grilled-shrimp3-200x300.jpg 200w, https://rasamalaysia.com/wp-content/uploads/2021/06/honey-cajun-grilled-shrimp3-300x450.jpg 300w, https://rasamalaysia.com/wp-content/uploads/2021/06/honey-cajun-grilled-shrimp3-768x1152.jpg 768w, https://rasamalaysia.com/wp-content/uploads/2021/06/honey-cajun-grilled-shrimp3-1024x1536.jpg 1024w
预期输出(第一个):
https://rasamalaysia.com/wp-content/uploads/2021/06/honey-cajun-grilled-shrimp3.jpg
如何从一组图片链接中抓取第一个图片链接?
【问题讨论】:
标签: vba web-scraping xmlhttprequest