Vídeo recomendado
https://youtu.be/diWPPPhW-9E

Get Element sem ID - Input de login e senha em site

A Web está aí, não há como negar. Ela é onipresente em praticamente toda operação eletrônica realizada nos dias de hoje. Como não podia ser diferente, o Excel, ferramenta máxima para analistas e profissionais das mais diversas áreas do mercado precisa estar alinhado com esta necesssidade. E ele está! Neste forum, o debate é focado em expor dúvidas, sugestões, modelos de código e exemplos de uso do Excel na Integração com tecnologias Web.
EvertonJunio
Colaborador
Colaborador
Mensagens: 13
Registrado em: Sex Set 23, 2016 1:13 pm

Get Element sem ID - Input de login e senha em site

Mensagem por EvertonJunio »

Prezados, boa noite.

Estou precisando muito da ajuda de vocês!!
Estou tentando criar um código que faça o login em um determinado site específico, porém o site é meio arcaico e os elementos para inserir o login e a senha não tem ID. Na verdade, quase nada no código fonte tem ID, apenas class e name.

Pois bem, utilizei o código abaixo, mas não tive sucesso. A macro dá erro dizendo que "o objeto não aceita esta propriedade ou método".
Por favor, preciso de uma ajuda o mais breve possível.

Site: http://www.eletrobras.com/elb/coegv/main.asp

PARTE DO HTML:

Código: Selecionar todos

<tbody><tr>
	<td valign="top">

		<table border="0" cellspacing="0" cellpadding="0">
		<tbody><tr>

			<td class="texto" valign="top">
<table border="0" cellspacing="0" cellpadding="0">
<tbody><tr>

	<td valign="top">
		
		
		<br><br>
		<div class="cxlogin">
		
		
			<form action="ValidaOpr.asp" method="post">
			
				
				<div class="tracoLaranja"></div>
				<div class="login">login:
				<input name="LoginOpr" class="inputLogin" type="text"></div>
				<div class="login">senha:
				<input name="SenhaOpr" class="inputLogin" type="password"></div>
				<div class="login">
				<input name="ok" class="button" type="submit" border="0" value="OK"></div>
				<div class="tracoLaranja"></div>
				</form>
		</div>
		
		
		
		
		
	</td>
</tr></tbody></table>


		
	</td>
<!-------------------- FIM CONTEUDO -------------------->
		</tr>
		</tbody></table><br></td>
</tr>




Código que estou usando até agora:

Código: Selecionar todos

Sub Efetuar_Login()

    Dim ie As InternetExplorer
    Dim ULogin As Boolean, ieForm
    Dim MyPass As String, MyLogin As String
    Dim objElement As Object
    
redo:
   ' MyLogin = Application.InputBox("Por Favor entre com o Login",  Default:="login", Type:=2)
  '  MyPass = Application.InputBox("Por favor entre com a senha",  Default:="Password", Type:=2)
    MyLogin = "Teste"
    MyPass = "Teste"
  
    If MyLogin = "" Or MyPass = "" Then GoTo redo
    
    Set ie = New InternetExplorer
    ie.Visible = True
    ie.Navigate "http://www.eletrobras.com/elb/coegv/main.asp"
 
    Do Until ie.ReadyState = READYSTATE_COMPLETE
    Loop
    Do Until ie.Document.all("LoginOpr") >= 0
    Loop
     
      
    ie.Document.getElementsByTagName("LoginOpr").Value = MyLogin
    ie.Document.getElementsByTagName("LoginOpr").innertext = MyLogin
    ie.Document.all("SenhaOpr").innertext = MyPass
    ie.Document.all("ok").Click
 
   ' If ULogin = False Then MsgBox "Usuário logado"
   ' Set ie = Nothing
   
End Sub

OBS: Não posso usar o Selenium, pois no trabalho ele é bloqueado.

Muito obrigado
Anexos
Uma Ajudinha Por Favor.zip
(13.38 KiB) Baixado 270 vezes


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Responder