我已經使用VBA結合硒編寫了一個腳本,以便從網頁中獲取所有公司鏈接,直到滾動向下才顯示所有鏈接。但是,當我運行我的腳本時,我只有20個鏈接,但總共有1000個鏈接。我聽說可以在代碼之間完成執行javascript函數的這種類型的任務。在這一點上,我不知道如何將它放在我的腳本中。以下是我試過到目前爲止:如何使用VBA向下滾動使用Selenium的網頁
Sub Testing_scroll()
Dim driver As New WebDriver
Dim posts As Object, post As Object
driver.Start "chrome", "http://fortune.com/fortune500"
driver.get "/list/"
driver.execute_script ("window.scrollTo(0, document.body.scrollHeight);") --It doesn't support here
Set posts = driver.FindElementsByXPath("//li[contains(concat(' ', @class, ' '), ' small-12 ')]")
For Each post In posts
i = i + 1
Cells(i, 1) = post.FindElementByXPath(".//a").Attribute("href")
Next post
End Sub
我認爲如果您的Excel版本支持它,Power Query可以自動執行此操作,或者對於舊版本,動態Web查詢可以自動執行https://www.vertex42.com/News/excel-web-query.html – Slai