我正在尝试创建一个脚本来抓取网站以检索最新的新闻更新.不幸的是,我遇到了一个小问题,我似乎无法解决我对DOM的有限知识.
我正在尝试抓取的页面构建如下:
Run Code Online (Sandbox Code Playgroud)<table> <tr class="color1"> <td>Author</td> <td>Content <a href="#">in HTML</a></td> <td>Date</td> </tr> </table>
除了内容,我可以检索我需要的字段.使用$ td-> nodeValue我以文本形式检索内容,而我想用HTML格式(那里有'a'标签,'blockquote'等)
这是我的代码:
try {
$html = @ file_get_contents("test.php");
checkIfFileExists($html);
$dom = new DOMDocument();
@ $dom->loadHTML($html);
$trNodes = $dom->getElementsByTagName("tr");
foreach ($trNodes as $tr) {
if ($tr->getAttribute("class") == "color1" || $tr->getAttribute("class") == "color2") {
$tdNodes = $tr->childNodes;
foreach ($tdNodes as $td) {
echo $td->nodeValue . "<br />\n";
}
echo "<br /><br /><br /><br /><br />\n";
}
} catch(Exception $e) {
echo $e->getMessage();
}
Run Code Online (Sandbox Code Playgroud)
我宁愿不必诉诸任何第三方图书馆,但显然任何答案都是最受欢迎的,图书馆与否.
提前致谢.