CONSULTA CORREIOS WEBBROWSER

BADJECO 09/07/2015 11:06:30
#448623
Olá estava eu aqui criando um modulo de consultas de CEPs ao Correios
pelo numero do CEP foi tudo ok , o modulo funciona sem problemas

O meu problema é na hora de buscar pelo endereço
Estou usando o site [Ô]m.correios.com.br/movel/buscaCepConfirma.do[Ô]
Consigo jogar do meu form para o site o endereço

mas na hora de clicar no botao [Ô]Buscar[Ô] nao estou conseguindo capturar o objeto do botao.
Alguem pode me dar uma ajuda nessa hora ?

O resultado da pesquisa eu estava pensado em jogar em um grid e a pessoa escolhe qual ela quer.
JCM0867 09/07/2015 12:30:08
#448626
Usa esse, eu uso e funciona bem, adapte aos teu projeto

[txt-color=#0000f0]Defina uma variável Publica[/txt-color]
Public DDCep(4) As String

[txt-color=#0000f0]Insira no Projeto:[/txt-color]
Private Sub cmdAluLocalizaCep_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdAluLocalizaCep.Click
CEP(mskAluCep.Text)
cboAluEstado.Text = IIf(Par_CaixaAltaResultadoCep, UCase(DDCep(0)), DDCep(0))
txtAluCidade.Text = IIf(Par_CaixaAltaResultadoCep, UCase(DDCep(1)), DDCep(1))
txtAluBairro.Text = IIf(Par_CaixaAltaResultadoCep, UCase(DDCep(2)), DDCep(2))
txtAluEndereco.Text = IIf(DDCep(3) = [Ô][Ô], [Ô][Ô], IIf(Par_CaixaAltaResultadoCep, UCase(DDCep(3) + [Ô] [Ô] + DDCep(4)), DDCep(3) + [Ô] [Ô] + DDCep(4)) + [Ô], [Ô])
txtAluEndereco.Focus()
txtAluEndereco.Select(txtAluEndereco.Text.Length, 0)
End Sub:

[txt-color=#0000f0][ô]Insira um Modulo[/txt-color]
[txt-color=#A52A2A]Public Sub CEP(ByVal pCEP As String)
Dim dsCep As DataSet
Dim ResultadoCep As String = String.Empty

Try
dsCep = New DataSet()
dsCep.ReadXml([Ô]http://cep.republicavirtual.com.br/web_cep.php?cep=[Ô] + pCEP.Replace([Ô]-[Ô], [Ô][Ô]).Trim() + [Ô]&formato=xml[Ô])

If Not IsNothing(dsCep) Then
If (dsCep.Tables(0).Rows.Count > 0) Then
ResultadoCep = dsCep.Tables(0).Rows(0).Item([Ô]resultado[Ô]).ToString()

Select Case ResultadoCep
Case [Ô]1[Ô]
DDCepEstado = (dsCep.Tables(0).Rows(0).Item([Ô]uf[Ô]).ToString().Trim())
DDCep(0) = (dsCep.Tables(0).Rows(0).Item([Ô]uf[Ô]).ToString().Trim())
DDCep(1) = (dsCep.Tables(0).Rows(0).Item([Ô]cidade[Ô]).ToString().Trim())
DDCep(2) = (dsCep.Tables(0).Rows(0).Item([Ô]bairro[Ô]).ToString().Trim())
DDCep(3) = (dsCep.Tables(0).Rows(0).Item([Ô]tipo_logradouro[Ô]).ToString().Trim())
If DDCep(3) = [Ô]Avenida[Ô] Then DDCep(3) = [Ô]Av.[Ô]
DDCep(4) = (dsCep.Tables(0).Rows(0).Item([Ô]logradouro[Ô]).ToString().Trim())
Case [Ô]2[Ô]
DDCep(0) = (dsCep.Tables(0).Rows(0).Item([Ô]uf[Ô]).ToString().Trim())
DDCep(1) = (dsCep.Tables(0).Rows(0).Item([Ô]cidade[Ô]).ToString().Trim())
DDCep(2) = String.Empty
DDCep(3) = String.Empty
DDCep(4) = String.Empty
Case Else
DDCep(0) = String.Empty
DDCep(1) = String.Empty
DDCep(2) = String.Empty
DDCep(3) = String.Empty
DDCep(4) = String.Empty
End Select
End If
End If
Catch ex As Exception
MessageBox.Show([Ô]Falha ao Buscar o Cep[Ô] & vbCrLf & ex.Message & vbCrLf & ex.Source)
End Try
End Sub[/txt-color]


BADJECO 09/07/2015 12:35:30
#448628
Pelo que eu li esse voce procura pelo CEP amigo ? - ainda nao testei mas por ser no Republica parece que sim -

Esse eu ja fiz , oque eu estou fazendo aqui , procura pelo NOME.
Ja está ate pronto so que eu preciso ficar clicando no botao do site pra ele funcionar , nao queria fazer isso
queria rodar a rotina ja dando o clique no botao [Ô]Buscar[Ô] do site , ai eu nao precisaria mostrar o WB pro usuario.

JCM0867 09/07/2015 13:42:50
#448631
SIm, digita o CEP e ele localiza os dados do CEP e fica com o foco no final do endereço esperando o numero da residência
pelo nome é mais complexo, tem ruas que tem mais de um CEP, tem ruas que tem um cep para números pares e outro para impares.
Tem que fazer algo tipo por ex. Se digitar Assis Brasil em Porto Alegre, ele te mostrar todos os CEP da Avenida e tu escolher qual tu quer.
BADJECO 09/07/2015 13:59:53
#448632
Foi isso mesmo que eu fiz amigo =)
O usuario digita um endereço ., se a busca me retornar 1 só eu tomo ele como padrao e ja jogo na tela do cadastro, se me retornar 2 ou mais , eu mostro um grid e ele pega qual quizer , o unico problema e que eu nao consigo fazer a consulta altomatica no site que eu passei [Ô]http://m.correios.com.br/movel/buscaCepConfirma.do[Ô]
queria so um meio de clicar altomaticamento no botao de busca , e nao te que fazer o usuario clicar nele só isso , o resto ja ta 100%!
Tem algo em mente ?
ASHKATCHUP 09/07/2015 14:50:48
#448633
Resposta escolhida
VB6 ou VB.NET?
BADJECO 09/07/2015 14:53:58
#448634
VB6 , malz
ASHKATCHUP 09/07/2015 14:59:02
#448635
Só me diz como tu ta escrevendo o texto do CEP que eu testo e posto a resposta.
BADJECO 09/07/2015 15:04:59
#448636
Uso essa rotina aqui , a mesma que uso na verificaçao de cnpj , entao tem uns campos que nao influenciam em nada ,logo nao perdi tem tirando ,
Tem um pra achar os botoes , mas , nao ta pegando
XMAN2000 09/07/2015 15:09:37
#448637
Olá BADJECO,
gostaria muito de uma copia do arquivo exemplo do seu projeto.
acho que essa técnica serviria pra eu coletar dados de outros sites.
minha intenção é migrar isso pra Excel e Access.
grato.
ASHKATCHUP 09/07/2015 15:16:00
#448638
Não consegui fazer funcionar o código que preenche o TXT.

Mas, para enviar o submit seria assim:

WebBrowser1.Document.getElementById([Ô]submit[Ô]).Click
Página 1 de 2 [18 registro(s)]
Tópico encerrado , respostas não são mais permitidas