【问题标题】:Easiest Way Of Getting Elements Unreadable by Simple HTML Dom Parser in PHP用 PHP 中的简单 HTML Dom 解析器获取不可读元素的最简单方法
【发布时间】:2016-12-03 19:33:26
【问题描述】:

假设一个简单的 Web 应用程序(如下所示)使用 Simple HTML Dom Parser 运行。

<?php 
  include('simple_html_dom.php'); 

  $html = file_get_html('http://someurl.com');
  echo $html;
 ?>

正如预期的那样,除了一个元素,div.addedDiv 之外,一切都出现了,它似乎是由 JS 注入的。以最简单和最具包容性的方式,请您演示如何用最少的代码检索一个元素,希望有一个例子, (update ) 对于大多数人来说最好是内联且易于实现的,无论是 PHP、AJAX 还是我不知道的 iFrame hack?提前感谢您提供的所有帮助。

更新:

此外,如果它有帮助,我实际上并不需要(或不希望)它与其他所有内容一起输出。我只需要它的一个属性来模拟一些额外的功能。因此,如果有任何区别,我不需要将网站的所有内容都输出到屏幕上的“$html”(如果有,我只需要使用 iframe)。

【问题讨论】:

    标签: javascript php ajax html-parsing simple-html-dom


    【解决方案1】:

    我认为你可以使用 phantomjs 模块。你需要安装它。

    phantomjs 是命令行实用程序,所以在 php 中你可以通过exec() 命令执行它并获得预期的 foutput。

    更多你需要了解如何从这里http://phantomjs.org/api/webpage/property/content.html获取JS修改后的HTML内容

    【讨论】:

    • 感谢您的建议,我一定会调查的。但是,为了简单起见,有没有办法完全内联(可能使用 PHP,或者更可能是 AJAX)?这不仅是首选,而且还会使该方法更易于使用,因为我希望它会导致更详细且易于复制的说明。
    • 不幸的是,没有办法在 PHP 端执行 Javascript 代码......实际上 phantomjs 是命令行直到不是 php 函数,所以你必须通过 php 代码执行命令来完成。
    猜你喜欢
    • 2020-10-24
    • 2015-02-19
    • 1970-01-01
    • 2014-03-18
    • 2012-01-17
    • 1970-01-01
    • 1970-01-01
    • 2016-07-30
    相关资源
    最近更新 更多