我尝试使用VBA和Selenium为我的工作从excel自动输入数据。然而,我仍处于起步阶段。我遇到了一个问题,我想点击Reserve / Contact Guest,这样我就可以完成编写代码的下一步了。
我试过FindElementsByClass
& FindElementsByCss
& FindElementsById
& FindElementsByXpath
。但没有起作用。
这是我的代码:
Option Explicit
Dim HJ As New WebDriver
Sub Test()
Dim keys As New SeleniumWrapper.keys
HJ.Start "chrome"
'link for webpage
HJ.Get "http:// "
'Full Screen
HJ.Wait 1000
HJ.Window.Maximize
'Username
HJ.Wait 1000
HJ.FindElementById("ctl00_SplitterRoot_LoginContent_tbUserName_I").Click
HJ.FindElementById("ctl00_SplitterRoot_LoginContent_tbUserName_I").SendKeys ("")
'Password
HJ.Wait 1000
HJ.FindElementById("ctl00_SplitterRoot_LoginContent_tbPassword_I_CLND").Click
HJ.FindElementById("ctl00_SplitterRoot_LoginContent_tbPassword_I").SendKeys ("")
'Checkbox
HJ.Wait 1000
HJ.FindElementById("ctl00_SplitterRoot_LoginContent_chkKeepMeIn").Click
'Log in
HJ.Wait 1000
HJ.FindElementById("ctl00_SplitterRoot_LoginContent_btnLogin_CD").Click
'Only one page
HJ.Wait 1000
HJ.FindElementById("ctl00_SplitterRoot_chkPin_S_D").Click
'CRM
HJ.Wait 1000
HJ.FindElementById("ctl00_SplitterRoot_RootContent_ASPxFormLayout_cmdModule7").Click
'Reserve / Contact Guest (HERE THE PROBLEM With All My Tries)
HJ.Wait 1000
'HJ.FindElementByXPath("//*[@id='ctl00_contentSplitter_menuMain_I0i0_']").Click
'HJ.FindElementById("ctl00_contentSplitter_menuMain_I0i0_").Click
'Set CRMs =HJ.FindElementByClass("dxnb-item dxnb-link dxnb").Click
'For Each CRM In CRMs
''Debug.Print CRM.Text
'Next CRM
'HJ.FindElementByXPath("/html/body/form/div[3]/table[1]/tbody/tr/td[1]/div/div/ul/li/ul/li[1]/span").Click
'HJ.FindElementByCss("#ctl00_contentSplitter_menuMain_I0i0_ > span").Click
'HJ.FindElementsByClass("ctl00_contentSplitter_menuMain_I0i0_")(1).Click
'HJ.FindElementById("ctl00_contentSplitter_Maincontent_imAddNew").Click
End Sub
我想点击预订/联系嘉宾:
这是网页:
发布于 2022-02-26 22:21:09
要将文本为https://stackoverflow.com/a/70077251/7429447的元素设置为Reserve / Contact Guest,您可以使用以下任何一个定位器策略
Reserve / Contact Guest
:
HJ.FindElementByXPath(“//span@class=‘dx’)并包含(.,‘备用/联系人’).ClickReserve
:
HJ.FindElementByXPath("//span@class='dx-vam‘并以(.,’Reserve‘)开头“).ClickContact Guest
:
HJ.FindElementByXPath(“//span@class=‘dx’)并包含(.,‘联系人’)”).Click参考文献
您可以在以下网站找到几个相关的详细讨论:
https://stackoverflow.com/questions/71276771
复制相似问题