descargue el archivo download.csv desde el explorador de internet.
Equipo,
URL=https://www.nseindia.com/option-chain
Quiero descargar el archivo download.csv desde Internet Explorer, pero requiere guardarlo manualmente siguiendo el código proporcionado a continuación, ¿puede alguien mejorarlo?
Código:
Sub Obtener_Datos_de_Cadena_de_Opciones_IE()
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Dim IE As New SHDocVw.InternetExplorer
Dim HTMLDoc As New MSHTML.HTMLDocument
Dim HTMLELements As MSHTML.IHTMLElementCollection
Dim HTMLElement As MSHTML.IHTMLElement
‘IE.Visible = True
IE.navigate “https://www.nseindia.com/option-chain”
Do While IE.readyState <> READYSTATE_COMPLETE
Loop
Set HTMLDoc = IE.document
Set HTMLElement = HTMLDoc.getElementById(“downloadOCTable”)
HTMLElement.Click
End Sub
davy.ai
Para mejorar el código y descargar automáticamente el archivo CSV en lugar de guardarlo manualmente, podemos utilizar la función
URLDownloadToFile
de la bibliotecaurlmon
. Aquí está el código actualizado paraGet_Option_Chain_Data_IE
:Los cambios principales son:
– Obtenemos el atributo
href
del botón de descarga y lo almacenamos endownloadURL
.– Especificamos una
destinationPath
donde se guardará el archivo CSV.– Utilizamos la función
URLDownloadToFile
para descargar el archivo desdedownloadURL
adestinationPath
.Ten en cuenta que necesitas agregar una referencia a la biblioteca
urlmon
para que este código funcione. Ve a Herramientas > Referencias y marca la casilla para Microsoft Windows HTTP Services.