在执行客户端脚本后获取文档源
Get document source after executes client scripts
对不起我的英语。
我想复制一个外部网站的全部源代码。我使用库PHP简单HTML DOM解析器。但当我得到souce时,我得到的只是和体内只有JS脚本。我该如何获得网站的内容,然后在javascript用正确的内容填充div内容后选择div内容?也许我可以在我身边执行这个JS代码?
本页代码:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"><html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<meta http-equiv="Content-Script-Type" content="text/javascript" />
<title>...</title>
<link href="shared/css/print.css" rel="stylesheet" type="text/css" />
<link href="css/tv.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="js/jquery-1.7.2.min.js"></script>
</head>
<body style="background-color:#fff;padding-left:10px;padding-right:10px;">
<script>
jQuery.ajax({
type: "POST",
url: "https://"+window.location.hostname+"/ajax/oficpaz.php",
data: "do=js&sess=o3vjro76847f1e2uqebqr904a6&id=262575",
success: function(data){
jQuery("body").html(data);
}
});
</script>
</body>
</html>
谢谢!
您需要使用象phantom.js或slimer.js这样的无头浏览器。
如果您正在使用firefox,请尝试选择页面上的所有文本,然后右键单击->查看选择源。
首先,确保您直接复制他人代码不会侵犯版权或知识产权。
其次,这个页面上有AJAX,这意味着你可以复制脚本,但正如你所看到的,它发布到一个php页面,该页面可能包含也可能不包含HTML和JavaScript,你可以复制,但你将无法看到任何php脚本,因为这是在服务器端执行的。
这是php的一个安全特性。如果你能够看到php脚本,你也将能够看到网站的数据库结构和任何密码和加密密钥等。
所以回答你的问题。不,您将无法通过在浏览器中查看源代码来复制php脚本。您需要访问服务器才能下载php文件,然后才能从中进行复制。
相关文章:
- 无法获取文档.GetElementById工作正常
- 用javascript从窗口获取文档,同时检查文档是否已加载
- 如何获取文档id's在BaasBox[0.9.2]中使用java脚本
- 如何获取文档数组中元素的计数-MongoDB
- node.js使用monk从数组中按id获取文档
- 无法获取文档.getElementByID(“testclick”).addEventListener
- 无论如何都要获取文档.在不删除整个页面的情况下写入即可工作
- Firefox加载项:从选项卡获取文档
- 获取文档的所有元素,id为'主导航'
- 在执行客户端脚本后获取文档源
- 获取文档的第一个字母
- jQuery 获取文档宽度和高度,不包括水平/垂直滚动条
- 如何获取文档片段中的所有文本节点
- Javascript:根本无法获取文档的实际宽度(jsfiddle提供)
- 获取文档的当前顶部位置
- 使用 JavaScript 获取文档标题元
- XPages:如何在视图中获取文档并读取值
- Windows Phone WebBrowser:获取文档高度的正确方法
- 使用 jquery 或任何首选库获取文档中包含的所有元素及其当前值
- MongoDB:获取文档和数组的一个对象