Ir para conteúdo
Fórum Script Brasil
  • 0

Mudar código de IE para selenium


Diego.Machado

Pergunta

Eu estou com esse código onde ele pega um cpf na planilha faz a consulta dele e traz algumas informações para o excel porem com a desabilitação do internet Explorer gostaria de saber se tem como mudar esse código para usar o web driver chorme e o selenium 

Private Sub btExecuta_Click()

 

Application.ScreenUpdating = False

 

Dim vErro As String

Dim IElocation As String

Dim Resultado(1 To 15) As String

 

Dim vNome As String

Dim vDados As String

Dim vSituacao As String

 

Dim W As Worksheet

 

Dim Ie As Object

 

Dim UltCel As Range

 

Dim A As Integer

Dim col As Integer

Dim vSegundos As Integer

 

Dim ln As Long

 

Set W = Planilha1

 

vSegundos = 3

 

W.Range("A2").Select

W.Range("B2:d1000").Clear

 

W.Range("A1").Value = "num_cpf"

W.Range("b1").Value = "nome_pessoa_física"

W.Range("c1").Value = "situação"

W.Range("d1").Value = "informações complementares"

 

Set Ie = CreateObject("InternetExplorer.Application")

Set UltCel = W.Cells(W.Rows.Count, 1).End(xlUp)

 

With Ie

.navigate "https://www.situacaocadastral.com.br/"

.Visible = True

End With

 

Do While Ie.busy

Loop

 

ln = 2

col = 1

 

Application.Wait TimeSerial(Hour(Now()), Minute(Now()), Second(Now()) + vSegundos)

 

Do While ln <= UltCel.Row

 

Ie.Document.getelementbyid("doc").Value = W.Cells(ln, col)

Ie.Document.getelementbyid("consultar").Click

 

Application.Wait TimeSerial(Hour(Now()), Minute(Now()), Second(Now()) + vSegundos)

 

On Error Resume Next

vErro = Ie.Document.getelementbyid("mensagem").innertext

 

On Error GoTo 0

 

If vErro = "Informe um termo válido! " Then

Ie.Document.getelementbyid("consultar").Click

Application.Wait TimeSerial(Hour(Now()), Minute(Now()), Second(Now()) + vSegundos)

ElseIf vErro = "Informe um termo válido! " Then

W.Cells(ln, col + 1).Value = "'" & vErro

ElseIf Trim(vErro) = "CPF inválido" Then

W.Cells(ln, col + 1).Value = "'" & vErro

ElseIf Trim(vErro) = "#Erro: Tente novamente!" Then

W.Cells(ln, col + 1).Value = "'" & vErro

Else

vErro = vbNullString

End If

 

Do While Ie.busy

Loop

 

If vErro = vbNullString Then

 

vNome = Ie.Document.getelementsbyclassname("dados nome")(0).innertext

vDados = Ie.Document.getelementsbyclassname("dados texto")(0).innertext

vSituacao = Ie.Document.getelementsbyclassname("dados situacao")(0).innertext

 

W.Cells(ln, col + 1) = vNome

W.Cells(ln, col + 2) = vSituacao

W.Cells(ln, col + 3) = vDados

 

vNome = vbNullString

vDados = vbNullString

vSituacao = vbNullString

 

Ie.Document.getelementbyid("btnVoltar").Click

 

Else

 

Ie.navigate "https://www.situacaocadastral.com.br/"

W.Cells(ln, col + 1) = "Dados inválidos para consulta"

 

End If

 

ln = ln + 1

 

Application.Wait TimeSerial(Hour(Now()), Minute(Now()), Second(Now()) + vSegundos)

 

Loop

 

Ie.Quit

 

W.UsedRange.EntireColumn.AutoFit

 

Application.ScreenUpdating = True

 

DoEvents

MsgBox "Consulta realizada com sucesso!"

 

Set Ie = Nothing

Set UltCel = Nothing

Set W = Nothing

 

End sub

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...