Saltar al contenido

ADJUNTAR DOCUMENTO EN INTERNET CON VBA EXEL

publicado

Hola, necesito ingresar a una página,. Para ello necesito adjuntar dos documentos de autentificación, sin embargo, no he logrado hacerlo. Ayudaaa

La página es https://wwwmat.sat.gob.mx/app/seg/faces/pages/lanzador.jsf?url=/operacion/20777/consulta-tu-opinion-de-cumplimiento-de-obligaciones-fiscales&tipoLogeo=c&target=principal&hostServer=https://wwwmat.sat.gob.mx

Allí se encuentra el código fuente.

El error se encuentra al adjuntar los archivos, pues la página no los reconoce como adjuntos...

image.png.3c5125d739e521bfec69fe1471e4d6c1.png

        Direc = "https://wwwmat.sat.gob.mx/app/seg/faces/pages/lanzador.jsf?url=/operacion/20777/consulta-tu-opinion-de-cumplimiento-de-obligaciones-fiscales&tipoLogeo=c&target=principal&hostServer=https://wwwmat.sat.gob.mx"
        Set objIE = CreateObject("InternetExplorer.Application")
        objIE.Visible = True
        objIE.navigate Direc
        
With objIE

    'OPTION FIEL
    While .Busy = True Or .readyState < 4: DoEvents: Wend
    Do Until objIE.readyState = 4: DoEvents: Loop
    objIE.document.getElementById("buttonFiel").Click
    While .Busy = True Or .readyState < 4: DoEvents: Wend
    Do Until objIE.readyState = 4: DoEvents: Loop

    'ACCESS WITH CER AND KER

    Application.Wait (Now + TimeValue("0:00:03"))
    
Set AttachCER = objIE.document.getElementById("fileCertificate")
Set AttachCERTXT = objIE.document.getElementById("txtCertificate")

Set AttachKEY = objIE.document.getElementById("filePrivateKey")
Set AttachKEYTXT = objIE.document.getElementById("txtPrivateKey")

AttachCERTXT.Value = "CONFIDENCIAL.cer"
AttachKEYTXT.Value = "Claveprivada_FIEL_CONFIDENCIAL_20170529_114039.key"

AttachCER.innerText = "C:\Users\...._20170529114039\CONFIDENCIALpa.cer"
AttachKEY.innerText = "C:\Users\...._20170529114039\CONFIDENCIAL529_114039.key"


AttachCER.FireEvent ("onclick")
AttachKEY.FireEvent ("onclick")

AttachCERTXT.FireEvent ("onclick")
AttachKEYTXT.FireEvent ("onclick")

objIE.document.getElementById("rfc").Value = "CONFIDENCIAL"
objIE.document.getElementById("privateKeyPassword").Value = "CONFIDENCIAL"

objIE.document.getElementById("submit").Click

 

 

Featured Replies

publicado
  • Autor
Hace 10 minutos , isidrod dijo:

@Luis paz ya probé tu macros  y si meda el mismo error pero manual si cargan no los reconoce cuando las macro los carga esos archivo

a ver si @avalencia @Leopoldo Blancas @Snake que nos dice 

saludos isidro

Si, manualmente si entra... Me desespera porque he buscado en internet, pero no he tenido éxito. ?

 

publicado

Hola a todos

Tengo la impresión de que lo que han hecho en esa web es justamente intentar evitar el envío masivo de datos (tal y como se intenta por ejemplo con el uso de captchas). Es decir, si tienes los archivo para ir ahí, y no usar justamente el captcha anterior, tampoco podrá hacerse algo automatizado.

¿Por qué? Las cajas de texto no reciben rutas como están intentando, sino que están relacionadas a código que si mal no me equivoco es JavaScript. Intente localizar la función correspondiente para "correrla" desde VBA, pero me encontré con código que por lo que veo está ofuscado: Enlace. Y aunque no soy un experto en web, me imagino que con algo de ingeniería inversa se podrá "desofuscar", pero al no conocer a profundidad cosas relacionadas a web, definitivamente tomará demasiado tiempo (al menos es mi caso). 

Ah, incluso si se intenta capturar la caja de dialogo para enviarle la ruta, pues intenté hacerlo usando funciones de la API de Windows, pero nada, no pude detectarlas.

¿Alternativas? Al parecer necesariamente hay que encontrar/"desofuscar" el código JavaScript para automatizar todo a través de VBA, pero repito, no soy experto en temas web, aunque creo no equivocarme. A ver si alguien que conozca más de webs nos lo (re)confirma.

 

publicado
  • Autor
Hace 18 minutos , avalencia dijo:

Hola a todos

Tengo la impresión de que lo que han hecho en esa web es justamente intentar el envío masivo de datos (tal y como por ejemplo con el uso de captchas). Es decir, si tienes los archivo para ir ahí, y no usar justamente el captcha anterior, tampoco podrá hacerse algo automatizado.

¿Por qué? Las cajas de texto no reciben rutas como están intentando, sino que están relacionadas a código que si mal no me equivoco es JavaScript. Intente localizar la función correspondiente para "correrla" desde VBA, pero me encontré con código que por lo que veo está ofuscado: Enlace. Y aunque no soy un experto en web, me imagino que con algo de ingeniería inversa se podrá "desofuscar", pero al no conocer a profundidad cosas relacionadas a web, definitivamente tomará demasiado tiempo (al menos es mi caso). 

Ah, incluso si se intenta capturar la caja de dialogo para enviarle la ruta, pues intenté hacerlo usando funciones de la API de Windows, pero nada, no pude detectarlas.

¿Alternativas? Al parecer necesariamente hay que encontrar/"desofuscar" el código JavaScript para automatizar todo a través de VBA, pero repito, no soy experto en temas web, aunque creo no equivocarme. A ver si alguien que conozca más de webs nos lo (re)confirma.

 

Gracias por intentarlo

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.