Recently Browsing 0 members
No registered users viewing this page.
This is for those pages that seem to load when you use _FFOpenURL(), but they have a text saying "please wait while we load your page..." but according to _FFOpenURL() the page has loaded. An example seen in popular sites is the Cloudflare page saying "Checking your browser before...". It's the opposite of pausing a script until an element is visible on a page. It takes Elements in the form of id, xpath or text search.
Global $BrowserPort = 4242 Global $TimeOut = 60000 Global $LocalHost = "127.0.0.1" Func _FFWaitWhileElement($thiselement, $elementtype = "xpath", $timeoutms = 60000) _FFConnect($LocalHost, $BrowserPort, $TimeOut) Local $Element Local $ElementFound = 1 Local $TimeoutCountdown = 0 While $ElementFound <> 0 And $TimeoutCountdown < $timeoutms If $elementtype = "xpath" Then $Element = _FFXPath($thiselement) EndIf If $elementtype = "id" Then Local $ConstructXPath = ".//*[@id='" & $thiselement & "']" $Element = _FFXPath($ConstructXPath) EndIf ; MsgBox(0, "", $Element) Local $ElementXPathTextContent = _FFCmd("FFau3.xpath.textContent") ; MsgBox(0, "", $ElementXPathTextContent) Local $ElementXPathInnerHTML = _FFCmd("FFau3.xpath.innerHTML") ; MsgBox(0, "", $ElementXPathInnerHTML) If $ElementXPathTextContent = "_FFCmd_Err" Or $ElementXPathInnerHTML = "_FFCmd_Err" Then $ElementFound = 0 Else $ElementFound = 1 EndIf If $elementtype = "text" Then $ElementFound = _FFSearch($thiselement) ; MsgBox(0, "", $ElementFound) EndIf $TimeoutCountdown += 1000 _FFDisConnect() _FFConnect($LocalHost, $BrowserPort, $TimeOut) WEnd Return $ElementFound EndFunc _FFConnect($LocalHost, $BrowserPort, $TimeOut) _FFOpenURL("https://www.site.com/page", True) _FFWaitForElement("Please Wait...","text", 60000) MsgBox(0,"","Page finished loading") It's pretty simple, hope it helps some of you who are working with FF.au3 :)
I am very much a newbie, but I am slowly learning by writting simple scripts.
#include <Clipboard.au3> #include <File.au3> #include <Msgboxconstants.au3> Const $test_url = "https://www.autoitscript.com/site/" Const $hFileOpen = FileOpen(@WorkingDir & "\TEMP.txt",$FO_OVERWRITE) ; Open FIREFOX at https://www.autoitscript.com/site/ ShellExecute("firefox.exe",$test_url) Sleep(60000) ; Allow the page to open - no rush Send("^a") ; Select ALL text Sleep(1000) ; Pause for 1 second Send("^c") ; CTRL + C to copy text Sleep(1000) ; Pause for 1 second ; Write Data to File FileWrite($hFileOpen,_ClipBoard_GetData ($CF_UNICODETEXT)) ; Close Temp File FileClose($hFileOpen) MsgBox(262144,"Completed","Data Written To File") The above code basically just copies text on a webpage and outputs it to a file. Works well. I understand AutoIT a little more now.
However, Send() doesn't work when my screen lock is on. :-(
Is there a simple tweak which I can do so that it does work when my screen is locked, bearing in mind that I am not a guru like most users yet.
I read somewhere the ControlSend works, but requires the browser "handle".
Thanks in advance.
Hi. I have the below script that I used the FF.au3 to control Firefox. However now I can't get MozRepl installed since it's no longer supported. I've got about 50 scripts like this for different website that I need to rewrite to control Firefox. I also connect to Lotus Notes to update some docs with the results of searches I do on these website. Does anyone have a good suggestion on what I can use to accomplish what I need done? I would love a way to temporarily get MozRepl back running because this is causing my team a lot of work at the moment. In the long run, I need something that will work on the newest version of windows and the newest web browsers.
As you can see, I open an Excel spreadsheet, read 1 name at a time and put them into fields on a website to search. This is just part of my script. Any help on what direction to go would be appreciated.
Thanks in advance!
Global $Session = ObjCreate("Notes.NotesSession")
Global $Search_db = $Session.GetDatabase($serverName, "system\center.nsf")
Global $Search_view = $Search_db.GetView("BGRPT")
Global $sXlsFile = @ScriptDir & "\TX_DALLAS_CRI.xls"
$URLstr = "https://www.dallascounty.org/criminalBackgroundSearch/"
If _FFIsConnected() Then
$sHTML = _FFReadText()
$testCode = StringRegExp($sHTML, "Any unauthorized use or misuse of the site or the sites information by Visitor", 0)
if $testCode = 1 Then
$oExcel = _ExcelBookOpen($sXlsFile)
; Gets an array of MasterNumbers from the Excel file
$INDEX = 1
$sCellValueL = (_ExcelReadCell($oExcel,"A" & $INDEX))
$sCellValueF = (_ExcelReadCell($oExcel,"B" & $INDEX))
$RecordNumber = (_ExcelReadCell($oExcel,"F" & $INDEX))
$oTextL = _FFObjGet("lastName", "name")
$oTextF = _FFObjGet("firstName", "name")
_FFObj($oTextL, "value", $sCellValueL)
_FFObj($oTextF, "value", $sCellValueF)
; _FFFormCheckBox("ctl00_ContentPlaceHolder1_CheckBoxList2_1", False, 0, "id") ; , "Criminal Cases", "name")
; $subButton = _FFObjGet("ctl00_ContentPlaceHolder1_Button1", "id")