fladimir Posted January 31, 2016 Report Share Posted January 31, 2016 Toya como vc conseguiu decodificar o CAPTCHA??? Passa pra nós!!! Quote Link to comment Share on other sites More sharing options...
fladimir Posted February 4, 2016 Report Share Posted February 4, 2016 Com relação ao captcha descobri algo q talvez possa ajudar, quem sabe até alguém aki já saiba, em todo caso eu não sabia e achei interessante vamos lá... Estudando esses negócios de Shell.Explorer / Internet.Aplication etc... no intuito de manipular as paginas pra ter os resultados q almejamos (tem vários exemplos aki no fórum) mas como bons programadores gostamos de "fuçar" kkk... Ai o q eu fiz foi carregar a pagina do portal nacional de consulta a NFe e salvar o html e estudar ele um pouco... percebi q o Captcha é uma imagem criptografada em Base64 (ohhh eu não sabia....) então o q eu fiz foi pesquisar como DECODIFICAR esse Base64, o máximo q consegui foi pegar a string da criptografica Base64 e gerar a imagem novamente... Ou seja, qdo carrego a pagina do portal nacional o captcha esta na seguinte linha: src="data:image/png;base64, aki vem um código gigantesco q é a imagem criptografada em BASE64... " border="0" /> Ai se pegamos esse string criptografada e decodificamos e salvamos temos o arquivo da imagem do Captcha q podemos carregar pra mostrar bonitinho como vemos na aplicação de alguns colegas. Pra mim foi uma descoberta muito legal e quem sabe tb a partir dai possamos ir além.... []´s Quote Link to comment Share on other sites More sharing options...
fladimir Posted February 4, 2016 Report Share Posted February 4, 2016 Pra extrair o captcha da chave encriptada da pra fazer assim: // cHTML Conteudo da Pagina HTML carregada. nTotLin := MlCount(cHTML, 255) For i:=0 to nTotLin cLinha := Memoline(cHTML, 50000,i) //-- pegar base64 salvar imagem e mostrar if 'data:image/png;base64,' $ cLinha cKeyEncodeBase64 := SubStr(cLinha, At('base64,',cLinha) + 7) cKeyEncodeBase64 := SubStr(cKeyEncodeBase64, 1, RAt( '" border', cKeyEncodeBase64) -1) FErase('c:\teste.png') hb_MemoWrit('c:\teste.png', hb_base64Decode( cKeyEncodeBase64 )) endif NEXT Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.