我正在尝试解析网页并打印出网页上的表格。我正在使用 php_simple_html dom 解析器。但是,当我尝试从网页上解析表格时,所有输出表格的 javascript 命令都变成了 php 中的注释:
<html>
<script type="text/javascript" src="jquery.js"></script>
<?php
include 'crawling/simple_html_dom.php';
$html = file_get_html('http://uiucfreefood.com/');
$ret = $html->find('body', 0)->find('div', 10)->find('table',0); //gets to the table tag
echo $ret; // nothing is echoed out because the original webpage uses jscript commands to write the table to the page but these commands get turned to comments for some reason.
?>
</html>
当我检查页面的元素时,我正在回显解析的信息,我能够看到带有所有信息的表格标签在那里,但 jscript 命令已变成注释。有没有办法让我自己获取信息并回显出来?我尝试添加另一个 ->find('tbody'); 在 parse 命令的末尾,但它什么也不做。任何建议表示赞赏。谢谢。
编辑:如果您下载 simple_html_dom.php 并将其包含在您的 php 文件中,您可以自己尝试此代码。来源:http: //sourceforge.net/projects/simplehtmldom/files/
编辑:刚刚注意到一些非常重要的事情。javascript 命令也在原始网页中被注释掉。相反,原始网页使用 javascript 函数打印出我没有定义的表格。自己编写该函数应该可以解决问题。
编辑:是的,那行得通。