1

我想从其他网站读取一些使用Google Script的项目的数据。有问题的页面是动态的;它们包含在初始页面加载后通过对服务器的 JavaScript 调用加载的内容。通常,对于一些静态内容,这可以正常工作,但我是 JavaScript 和 Google Apps 脚本的新手,因此如果通过 JavaScript(例如通过 AJAX)异步加载内容,我不知道如何获取内容。

可以在此处找到一个示例,该示例显示了广播电台播放的最后曲目。但是,这些曲目是使用 JavaScript 加载的,而不是包含我得到的字符串的表

<td class="row2"><span id="track_2">&nbsp;</span></td>

当我使用:

UrlFetchApp.fetch(url).getContentText();

但是,如果我将 HTML 保存在浏览器中,则会出现正确的数据字符串:

<td class="row2" id="track_2">15:12 Will Smith - Men In Black</td>
                     ^^^^^^^  ^^^^^ ^^^^^^^^^^   ^^^^^^^^^^^^

有没有办法用 Google Apps 脚本做到这一点?

4

1 回答 1

2

一般不会,不会。如果您可以对它正在做的事情进行逆向工程,您也许可以执行相同的 JavaScript 调用,但如果它需要任何服务器协调,则可能性不大。理论上,可以在 Google Apps Script(如 env-js)中运行一个 JavaScript 浏览器实现,它可以做到这一点,但在实践中,我认为即使不是不可能,也是非常困难的。

于 2012-12-09T19:10:27.610 回答