我用VBA编写了一个Selenium脚本,以便从下拉列表中选择,然后按Done按钮。
默认情况下,该页面在其登陆页中显示Bangladesh。我需要把它改成Canada。
我的脚本从下拉列表中选择所需的国家,但是当它应该单击Done按钮时,它会单击其他地方,因此国家保持不变。脚本没有显示任何错误。
Sub SelectDropdown()
Dim driver As New ChromeDriver
With driver
.get "https://www.amazon.com/dp/B071V5DQ56/"
.FindElementByCss("#nav-packard-glow-loc-icon", timeout:=5000).Click
.FindElementByCss("#GLUXCountryListDropdown", timeout:=5000).Click
.FindElementById("GLUXCountryList", timeout:=5000).AsSelect.SelectByText "Canada"
.FindElementByCss("div.a-popover-wrapper button[name='glowDoneButton']", timeout:=5000).Click
End With
Stop
End Sub这就是它在登陆页上显示的。

发布于 2018-10-17 19:28:32
似乎在最后一击之前它需要一点喘息。
Option Explicit
Public Sub SelectDropdown()
Dim driver As New ChromeDriver
With driver
.get "https://www.amazon.com/dp/B071V5DQ56/"
.FindElementByCss("#nav-packard-glow-loc-icon", timeout:=5000).Click
.FindElementByCss("#GLUXCountryListDropdown", timeout:=5000).Click
.FindElementById("GLUXCountryList", timeout:=5000).AsSelect.SelectByText "Canada"
Application.Wait Now + TimeSerial(0, 0, 1)
.FindElementByCss("[data-action='a-popover-close']", timeout:=5000).Click
End With
End Subhttps://stackoverflow.com/questions/52862083
复制相似问题