catdell Posted March 15, 2016 Share Posted March 15, 2016 I'm new to autoit and trying to automate login procedure to YouTube website but failed. the script below not able to locate username field and show $_IESTATUS_NoMatch intermittently. I'm using IE11 on Win7 and need help. #include <IE.au3> local $oIE = _IECreate("www.youtube.com") _IELinkClickByText($oIE , 'Sign in') _IELoadWait($oIE) Local $UserName = _IEGetObjById($oIE, "Email") ;--> error $_IESTATUS_NoMatch Local $Next = _IEGetObjById($oIE, "next") _IEFormElementSetValue($UserName, 'abcd@gmail.com') _IEAction( $Next , 'click') Link to comment Share on other sites More sharing options...
catdell Posted March 15, 2016 Author Share Posted March 15, 2016 I noticed the same problem when trying to login into Yahoo account. Cannot locate username field with error $_IESTATUS_NoMatch #include <IE.au3> local $oIE = _IECreate("groups.yahoo.com") _IELinkClickByText($oIE , 'Sign In') sleep(1000) Local $UserName = _IEGetObjById($oIE, "login-username") ;Warning from function _IEGetObjById, $_IESTATUS_NoMatch (login-username) Link to comment Share on other sites More sharing options...
catdell Posted March 18, 2016 Author Share Posted March 18, 2016 any hint ? workaround ? Link to comment Share on other sites More sharing options...
Danyfirex Posted March 18, 2016 Share Posted March 18, 2016 Hi. You can do this way. #include <IE.au3> #Region Login Youtube Local $oIE = _IECreate("https://accounts.google.com/ServiceLogin") Local $UserName = _IEGetObjById($oIE, "Email") Local $Next = _IEGetObjById($oIE, "next") _IEFormElementSetValue($UserName, "username") _IEAction($Next, "Click") Sleep(2000);just delay to wait for next fields Local $UserPass = _IEGetObjById($oIE, "Passwd") _IEFormElementSetValue($UserPass, "password") Local $signIn = _IEGetObjById($oIE, "signIn") _IEAction($signIn, "Click") _IELoadWait($oIE) _IENavigate($oIE,"http://www.youtube.com/") #EndRegion #Region Login yahoo Local $oIE = _IECreate("https://login.yahoo.com/config/login") Local $UserName = _IEGetObjById($oIE, "login-username") Local $Next = _IEGetObjById($oIE, "login-signin") _IEFormElementSetValue($UserName, "username") _IEAction($Next, "Click") Sleep(2000);just delay to wait for next fields Local $UserPass = _IEGetObjById($oIE, "login-passwd") _IEFormElementSetValue($UserPass, "password") Local $signIn = _IEGetObjById($oIE, "login-signin") _IEAction($signIn, "Click") _IELoadWait($oIE) #EndRegion Saludos Xandy 1 Danysys.com AutoIt... UDFs: VirusTotal API 2.0 UDF - libZPlay UDF - Apps: Guitar Tab Tester - VirusTotal Hash Checker Examples: Text-to-Speech ISpVoice Interface - Get installed applications - Enable/Disable Network connection PrintHookProc - WINTRUST - Mute Microphone Level - Get Connected NetWorks - Create NetWork Connection ShortCut Link to comment Share on other sites More sharing options...
catdell Posted March 21, 2016 Author Share Posted March 21, 2016 thanks. Dannyfirex. it is working well. May I know why the conventional way not working ? user will normally navigate to a specific website and click login but your method is login first before proceed to dedicated webpage. is there any limitation ? Link to comment Share on other sites More sharing options...
catdell Posted March 21, 2016 Author Share Posted March 21, 2016 by referring to your script, it able to login but not able to find the logout button for yahooGroups. why there are so many restriction in IE11 ? my friend told me that he encountered similar problem in IE11 but worked fine in IE10. is autoit fully compatible in IE11 ? appreciate for any advice ? Link to comment Share on other sites More sharing options...
Danyfirex Posted March 21, 2016 Share Posted March 21, 2016 You're way not work because you don't wait enough. to logout you maybe can navigate to logout url http://login.yahoo.com/?logout=1 Saludos Danysys.com AutoIt... UDFs: VirusTotal API 2.0 UDF - libZPlay UDF - Apps: Guitar Tab Tester - VirusTotal Hash Checker Examples: Text-to-Speech ISpVoice Interface - Get installed applications - Enable/Disable Network connection PrintHookProc - WINTRUST - Mute Microphone Level - Get Connected NetWorks - Create NetWork Connection ShortCut Link to comment Share on other sites More sharing options...
catdell Posted March 22, 2016 Author Share Posted March 22, 2016 #include <IE.au3> Local $oIE = _IECreate("https://login.yahoo.com/config/login") sleep(3000) Local $UserName = _IEGetObjById($oIE, "login-username") Local $Next = _IEGetObjById($oIE, "login-signin") _IEFormElementSetValue($UserName, "my_username") _IEAction($Next, "Click") Sleep(3000);just delay to wait for next fields ;Local $UserPass = _IEGetObjById($oIE, "login-passwd") send("my_password") sleep(2000) send("{TAB}") send("{TAB}") sleep(1000) send("{ENTER}") sleep(5000) _IENavigate($oIE,"http://groups.yahoo.com") ;=> error ??? sleep(3000) ;_IELinkClickByText($oIE ,'Sign out') _IENavigate($oIE,"http://login.yahoo.com/?logout=1") I encountered error with _IENavigate()...any idea why ? compatibility issue on IE11? --> Press Ctrl+Alt+Break to Restart or Ctrl+Break to Stop "C:\Program Files (x86)\AutoIt3\Include\IE.au3" (272) : ==> The requested action with this object has failed.: $oObject.navigate($sUrl) $oObject^ ERROR ->12:01:51 AutoIt3.exe ended.rc:1 +>12:01:51 AutoIt3Wrapper Finished. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now