【问题标题】:Get a JavaScript variable from a remote page?从远程页面获取 JavaScript 变量?
【发布时间】:2013-05-29 02:16:30
【问题描述】:

我目前正在为一家公司开发 API。具体来说,这是我的问题。他们在网站管理员更新的网页上有 JavaScript 数组。我必须将这些数组拉入一个简单的 JS 脚本或 PHP 文件并获取这些数组的内容,然后我可以根据 API 的规范对其进行排列,并将其输出为 JSON。

如何使用 PHP 或 jQuery/JS 从远程页面中提取 JavaScript 变量并使其可用于其他应用程序?

不,我无法访问公司的网站。我必须为此处理页面抓取工作。

谢谢!

【问题讨论】:

  • 您需要网站将其包装在 JSONP 中,以便通过 Javascript 执行此操作。否则你将不得不在服务器上解析它(所以 PHP 可能在这里为你工作)。

标签: php javascript arrays screen-scraping


【解决方案1】:

由于Same origin policy,您无法远程访问私有 javascript 变量。他们必须以某种可以使用 AJAX 访问的可读格式输出数组,可能是 JSON。

编辑:如下所述,如果数组在 javascript 文件中明确定义为文本,您可以在 PHP 中使用 cURL 获取该文件的内容

【讨论】:

  • 他说使用 PHP(在他的服务器上运行)是可能的。
  • 仅当 javascript 文件在代码中明确定义完整数组时。然后他可以使用 cURL 抓取文件,但我的猜测是,如果他需要抓取类似的东西,它并没有以文本形式明确定义。如果是,那么是的,cURL 可以工作。
【解决方案2】:

如果我在你的位置,我会使用 PHP 到 file_get_contents(或 CURL,取决于服务器配置)页面,然后根据标记来解析它以找到变量的值,假设它是首先写到页面上。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-21
    • 2014-10-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-14
    相关资源
    最近更新 更多