gpt4 book ai didi

javascript - 使用 VBA 将数组传入和传出网页中的脚本函数

转载 作者:太空宇宙 更新时间:2023-11-03 21:44:53 24 4
gpt4 key购买 nike

您好,我正在尝试从网页 http://www.investing.com/indices/us-spx-500-futures-historical-data 导入数据我想要做的是导航到此网页并从日历中选择不同日期范围的宏。

我不明白如何在日历中设置日期。我可以打开它,但我无法“复制”鼠标点击以选择日期到目前为止,我开发的代码是:

Sub Problem()
Dim IE As Object
Set IE = CreateObject("InternetExplorer.application")
IE.Visible = True
IE.navigate "http://www.investing.com/indices/us-30-historical-data"
'
PauseTime = 4 ' Set duration to wait in seconds.
Start = Timer ' Set start time.
Do ' While Timer < Start + PauseTime
DoEvents ' allow other processes to work (the browser to have time to load the webpage)
Loop Until IE.ReadyState = READYSTATE_COMPLETE Or Timer > Start + PauseTime
IE.Document.getElementByID("datePickerIconWrap").Click
'
End Sub

我查看了这个页面的源代码,发现了两个有趣的函数,DatePickerGetDateDatePickerSetDate我尝试使用

运行这两个脚本
IE.Document.parentWindow.execScript "widgetHolCalendar.DatePickerGetDate", "javascript"
IE.Document.parentWindow.execScript "widgetHolCalendar.DatePickerSetDate", "javascript"

代码没有给出错误消息,但没有任何更改,所以我不确定代码是否真的在执行某些操作。如果我正确理解了代码,要设置新日期,我必须使用 2 个参数调用 DatePickerSetDate

DatePickerSetDate(date, shifTo)

其中 date 是一个包含 2 个元素的数组,而 shifTO 是一个 bool 值。我不知道如何使用 vba 将数组传递给这个脚本。

此外,当我调用函数 DatePickerGetDate 时,我想获取结果并将其保存在 vba 数组中

有人能帮忙吗?

最佳答案

这对我有用(从页面完全加载时开始...)

Dim f As String

'set the new dates (you just need to plug the required strings in here...
f = "$('#widgetHolCalendar').DatePickerSetDate(['11/05/2013', '11/12/2013'], true);"
IE.document.parentWindow.execScript f, "jscript"

'trigger the page function which refreshes the table
f = "historical_submit();"
IE.document.parentWindow.execScript f, "jscript"

关于javascript - 使用 VBA 将数组传入和传出网页中的脚本函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21132568/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com