我需要渲染页面而不执行它的JavaScript(但是注入我自己的脚本),向用户显示页面从机器人的POV中的外观。
到目前为止,我已经考虑过使用ajax加载页面,从加载的数据中删除所有<script></script>
标记,注入我自己的<script></script>
标记并用过滤后的数据替换页面html。
有没有更好的方法来实现这一目标?
答案 0 :(得分:2)
<meta http-equiv="refresh" content="5; url=http://example.com/">
修改强>
所以,这是你可以做的事情:
查看这个名为fancybox的jquery插件。
它的作用是将远程网址内容加载到页面上的一个整齐的弹出窗格中。您可以检查是否可以修改它的代码,使其按您的需要工作。
快速抬头:机器人也没有cookie。因此,剥离脚本标签是行不通的。还必须在请求中禁用cookie。
答案 1 :(得分:2)
也许不是更好的方法,但可以使用javascript来做你想做的事情:
您可以编写(php)服务器端脚本,使用file_get_contents()获取原始页面内容,使用php删除和替换javascript页面内容(str_replace,substr_replace, preg_match)然后在iframe中调用这个php脚本。
有关详细信息,请参阅我的相关答案:https://stackoverflow.com/a/17262334/888177