Bonsoir à tous voilà je fais un ptite fonction d'autologin avec l'UDF IE tout va bien jusqu'à ce que le click s'effectue pour valider le login et que la page s'actualise une fois le login effectué, le navigateur est sur la page post connexion tandis que dans le programme autoit il semble toujours sur la page précédente celle du login.
Comment cela se fait il ? On dirait que l'objet $nav ne s'actualise pas une fois la page rechargée.
#include <IE.au3>
#include <Array.au3>
;~ Creation de la fenetre de navigation
Global $nav = _IECreate ( "ogame.Fr")
;~ Initialisation variable pour login
Local $butLog = _IEGetObjById($nav,"loginBtn")
Local $logUni = _IEGetObjById($nav,"serverLogin")
Local $logUser = _IEGetObjById($nav,"usernameLogin")
Local $logPass = _IEGetObjById($nav,"passwordLogin")
Local $logSubmit = _IEGetObjById($nav,"loginSubmit")
;~ On remplit le formulaire et on l'envoit
ConsoleWrite(_IEPropertyGet($nav,"locationurl")&@CRLF)
_IEAction($butLog, "click")
_IEFormElementOptionSelect($logUni,"s64-fr.ogame.gameforge.com",1,"byValue")
_IEFormElementSetValue($logUser,"XXXXX")
_IEFormElementSetValue($logPass,"YYYYYYY")
_IEAction($logSubmit, "click")
_IELoadWait($nav)
ConsoleWrite(_IEPropertyGet($nav,"locationurl")&@CRLF)
ConsoleWrite(_IEPropertyGet($nav,"locationurl")&@CRLF)
Local $oInputs = _IETagNameAllGetCollection($nav)
Local $oInput
For $oInput In $oInputs
;~ ConsoleWrite("Tagname: " & $oInput.tagname & @CRLF & "id: " & $oInput.id & @CRLF & "innerText: " & $oInput.innerText)
if $oInput.href = "http://s64-fr.ogame.gameforge.com/game/index.php?page=resources" Then
$oInput.Click
ExitLoop
EndIf
Next
Modifié en dernier par Ouraios le jeu. 26 mars 2015 00:21, modifié 1 fois.
Global $nav = _IECreate ("ogame.fr")
_IELoadWait($nav)
Sleep(1000)
Attention aussi à que la variable nav soit bien en Global, en enlevant le Global j'ai rencontré le même problème alors que mon script s'exécute bien dans un seul et même fichier sans passer par des fonctions, étrange ..
En tout cas pour moi en faisant tout ça, ça marche nickel !