作为标题,我的问题是如何输出(假设在服务器计算机上保存为文本文件或使用ajax将结果传递给其他一些php函数)页面上的所有DOM内容?

我做了一些功课,我试过curl可以使用“curl http://google.ca > dom.txt”输出所有DOM内容但是,这种方法不会保存Javascript生成的内容,换句话说,javascript代码将不跑。 另一种方法是将一些javascript代码嵌入到页面中,让页面加载我们想要输出的网站,然后使用javascript代码在加载所有内容后保存所有DOM文件。

我不确定phantom.js是否可以做这样的工作,如果有,那该怎么办?

任何机构都可以详细解答如何实现这个目标?

我对任何解决方案都持开放态度,这个程序将在我的服务器上运行以提供服务。

先感谢您。

===============>>#1 票数:4 已采纳

为什么不:

jQuery(document).ready(function($) {
    $.post(
        '/your_filename.php',
        'html='+$("html").html(),
        function(response){
            alert(response);
        }
    );
});

===============>>#2 票数:1

您可以使用document.documentElement.innerHTML获取HTML元素的内容(包括头部和主体)。 如果需要所有内容,可以将document.doctypedocument.documentElement.outerHTML连接起来。

请注意, outerHTML不是完全跨浏览器(它适用于IE和Chrome,但不适用于Firefox) - 为了模拟Firefox的outerHTML ,请参阅此问题: 如何在Firefox中执行OuterHTML?

===============>>#3 票数:0

Javascript是一种客户端语言,因此在服务器上运行它需要专门的技术。 PHP实际上有能力使用DOM的东西,因为它可以在传输到客户端之前构建和修改dom元素, 在这里阅读更多相关内容

我不太确定你要通过这样做来完成什么,但听起来你正在努力:你正在向客户端发送代码,以便客户端可以转身并将代码发送回服务器,以便服务器可以将其保存为文件吗? 虽然如果你需要这样做,请遵循Brilliand和iambriansreed的建议,用Javascript / jQuery挖掘dom元素。

  ask by cache translate from so

未解决问题?本站智能推荐: