Web ページを解析し、Web ページにある表を印刷しようとしています。php_simple_html dom パーサーを使用しています。ただし、Web ページからテーブルを解析しようとすると、テーブルを出力するすべての 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 コマンドは、元の Web ページでもコメントアウトされています。代わりに、元の Web ページは JavaScript 関数を使用して、私が定義していないテーブルを出力しています。その関数を自分で作成すると、問題が解決するはずです。
編集:うん、うまくいった。