excel 尝试复制活动单元格的值,打开浏览器,在搜索框中搜索活动单元格的值,然后获取搜索到的网页的URL

zxlwwiss  于 2023-05-01  发布在  其他
关注(0)|答案(1)|浏览(165)

我正在尝试创建一个宏:获取活动单元格的值(属性地址)/使用Selenium Edge Driver打开Edge到www.redfin.com/搜索单元格的值(属性地址)/从搜索结果网页获取URL/将URL超链接写回活动单元格,单元格中的值仍然完好无损,但现在它是一个超链接,您可以单击它返回搜索结果页面。
这是我正在尝试的代码。

' Create a new instance of the Edge WebDriver
Dim driver As New WebDriver

Sub FetchURL()
' Get the value from the active cell

Dim cellValue As String
cellValue = ActiveCell.Value
 
' Start the Edge browser
driver.Start "Edge", "msedgedriver.exe"

' Navigate to the Redfin search page
driver.Get "https://www.redfin.com"

' Find the search bar and enter the search term
Dim searchBox As WebElement
Set searchBox = driver.FindElementByCss("input[class='search-input-box']")
searchBox.SendKeys cellValue
searchBox.Submit

' Wait for the search results to appear
'driver.Wait 5000, "div[class='homes summary']"

' Get the URL of the search results page
Dim pageURL As String
pageURL = driver.Url

' Write the URL back to Excel with a hyperlink
ActiveCell.Hyperlinks.Add Anchor:=ActiveCell, Address:=pageURL, TextToDisplay:=ActiveCell.Value

' Do not close the browser or release the driver object

End Sub

它只是将www.redfin.com复制回超链接,而不是搜索到的属性页的URL。不知道出了什么问题。感谢您的意见。

eivgtgni

eivgtgni1#

您需要包括一个等待期,以使搜索的地址页加载。否则,您将获得原始URL。在Submit搜索框后,向代码中添加driver.wait 1000

相关问题