
Web Scraping con VBA
Publicado por Ronald (2 intervenciones) el 04/09/2023 06:05:06
Hola a todos. El siguiente código en VBA, me devuelve el valor que requiero vacío, pero sí me devuelve texto de ciertos campos.
Sub webscraping()
Dim inter As Object
Dim CT As String
Dim Cui As String
If Not IsEmpty(Range("B3")) Then
Cui = Range("B3").Value
Set inter = CreateObject("INTERNETEXPLORER.APPLICATION")
inter.Visible = False
inter.NAVIGATE "https://ofi5.mef.gob.pe/ssi/Ssi/Index?tipo=2&codigo=2512258"
While inter.Busy Or inter.ReadyState <> 4
DoEvents
Wend
'CT = inter.document.getElementsByTagName("td")(47).innerText
CT = inter.document.getElementById("val_cta").innerText
[C4] = CT
inter.Quit
Else
MsgBox "Debe indicar el CUI a buscar"
End If
End Sub
En el CT que está comentado con una comilla, cuando paso el nombre de etiqueta "td" y le pongo la posición 46, me devuelve el texto de ese campo, pero, cuando le pongo la posición 47, que es el valor que deseo, me lo devuelve vacío. Igual, intenté utilizando el id de la etiqueta como se ve en el CT sin comentar.
Omitan la variable CUI...
Alguien sabe qué podría estar haciendo mal y por qué no me devuelve el valor solicitado?
Gracias de antemano...
Sub webscraping()
Dim inter As Object
Dim CT As String
Dim Cui As String
If Not IsEmpty(Range("B3")) Then
Cui = Range("B3").Value
Set inter = CreateObject("INTERNETEXPLORER.APPLICATION")
inter.Visible = False
inter.NAVIGATE "https://ofi5.mef.gob.pe/ssi/Ssi/Index?tipo=2&codigo=2512258"
While inter.Busy Or inter.ReadyState <> 4
DoEvents
Wend
'CT = inter.document.getElementsByTagName("td")(47).innerText
CT = inter.document.getElementById("val_cta").innerText
[C4] = CT
inter.Quit
Else
MsgBox "Debe indicar el CUI a buscar"
End If
End Sub
En el CT que está comentado con una comilla, cuando paso el nombre de etiqueta "td" y le pongo la posición 46, me devuelve el texto de ese campo, pero, cuando le pongo la posición 47, que es el valor que deseo, me lo devuelve vacío. Igual, intenté utilizando el id de la etiqueta como se ve en el CT sin comentar.
Omitan la variable CUI...
Alguien sabe qué podría estar haciendo mal y por qué no me devuelve el valor solicitado?
Gracias de antemano...
Valora esta pregunta


0