获取 iframe 源?

Posted

技术标签:

【中文标题】获取 iframe 源?【英文标题】:Getting iframes source? 【发布时间】:2011-11-29 01:17:02 【问题描述】:

我的网站上有一个 iframe,它显示不同的网站。

是否可以抓取和存储/保存 iframed 网站的来源?

【问题讨论】:

使用 php - 是的。使用 javascript - 不,不是没有服务器端代理。你想用哪一个?你的情况如何? 我对服务器端代理一无所知,所以 PHP 会很好 :) Curl 是一种方式 如果可能的话,您可以从 gamil 等网站阅读人们的电子邮件。显然这是不允许的。 【参考方案1】:

浏览器中的同源策略将阻止您访问从另一个域加载的 div 的内部内容。

【讨论】:

还有没有办法绕过? 我希望不是 :) 如果可以的话,这将是一个安全问题。我见过的唯一可以绕过它的地方是 Adob​​e AIR 应用程序,您需要创建一个必须由 iframe 父级和子级支持的“桥梁”。【参考方案2】:

你总是可以$iframeSource = file_get_contents("http://iframe-source-url/");它。

【讨论】:

我相信这不是我想要达到的。我需要获取特定、准确的用户从 iframed 站点获得的数据。我不确定这是否可能,对我来说似乎是安全漏洞。 那么您可以在此处找到一种在 JavaScript 中获取源代码的方法:***.com/questions/139118/javascript-iframe-innerhtml,然后通过 AJAX 调用将其存储到您的 PHP 脚本中。您应该知道您只能对位于同一服务器上的页面执行此操作。在这里阅读:en.wikipedia.org/wiki/Same_origin_policy 谢谢,但是页面在不同的服务器上。

以上是关于获取 iframe 源?的主要内容,如果未能解决你的问题,请参考以下文章

如何从 iframe 源获取 jstree 实例?

在新选项卡中打开 iframe 源

无效参数:“使用”必须是在 iframe 中提取图像源的字符串

iframe简单使用 获取iframe 获取iframe 元素值 iframe获取父页面的信息

如何获取iframe外面的元素

如何获取iframe里面iframe的高度