#Region Project Attributes
#MainFormWidth: 400
#MainFormHeight: 200
#MergeLibraries: False
#End Region
Sub Process_Globals
Private fx As JFX
Private MainForm As Form
Private Selenium As Pnd_Selenium
End Sub
Sub AppStart (Form1 As Form, Args() As String)
MainForm = Form1
MainForm.RootPane.LoadLayout("Layout1")
MainForm.Show
Sleep(500) ' To show MainForm before Chrome
Dim UserAgent As String = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36"
Selenium.AddArgument("--disable-blink-features=AutomationControlled")
Selenium.AddArgument("--user-agent=" & UserAgent)
Selenium.AddExperimentalOption("useAutomationExtension", False)
Selenium.AddExperimentalOption("excludeSwitches", Array As String("enable-automation"))
Selenium.Initialize("Selenium", "e:\Kotlin\Wrap_Selenium\ChromeForTestingAndChromeDriver\chromedriver.exe")
Selenium.ExecuteScript("Object.defineProperty(navigator, 'webdriver', {get: () => undefined})", "")
Dim Parameters As Map = CreateMap("userAgent":UserAgent)
Selenium.ExecuteCdpCommand("Network.setUserAgentOverride", Parameters)
Selenium.NavigateTo("https://www.google.com/search?q=b4x")
End Sub
Sub Selenium_NavigationFinished
Dim TagAlist As List = Selenium.FindByTagNameList("a")
For Each TagA As Pnd_WebElement In TagAlist
Log(TagA.GetText & " - " & TagA.GetDomProperty("href"))
Next
Sleep(2000)
Selenium.Quit
Sleep(1000)
ExitApplication
End Sub