在我搜索堆栈溢出的过程中,我发现了许多类似的主题,但没有得到确切的答案。我想做的是去下面的网站,并点击“出口CSV”JS按钮。
到目前为止,我从另一个VBA编码器中“复制和借用”的是:
亚GetDat()
Set IE = CreateObject("InternetExplorer.Application")
With IE
.Visible = True
.navigate "http://financials.morningstar.com/ratios/r.html?t=JNJ®ion=USA&culture=en_US"
.Top = 50
.Left = 530
.Height = 600
.Width = 1000
Do Until Not IE.Busy And IE.readyState = 4
DoEvents
Loop
End With
IE.Document.getelementsbytagname("Export").Item(1).Click结束子对象
我已经尝试将它延迟5-10秒等待页面加载。有人找不到那个按钮.?
此外,我检查了按钮的元素。该按钮的html是(我添加了空格以显示整个代码):
< span class="csv“>< /span >< div >Export< /div >< /a >
感谢您的时间,期待听到任何关于我如何能解决这个问题的想法!
发布于 2015-05-19 11:26:31
您不应该使用浏览器简单地下载文件,使用URLDownloadToFileA API:
Private Declare Function URLDownloadToFile Lib "urlmon" Alias "URLDownloadToFileA" (ByVal pCaller As Long, _
ByVal szURL As String, ByVal szFileName As String, _
ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long
Sub Download()
URLDownloadToFile 0, "http://financials.morningstar.com/ajax/exportKR2CSV.html?&callback=?&t=XNYS:JNJ®ion=usa&culture=en-US&cur=&order=asc", _
"C:\Temp\Export.csv", 0, 0
End Subhttps://stackoverflow.com/questions/30323796
复制相似问题