我尝试使用以下代码抓取此论坛的内容帖子 https://forum.lowyat.net/topic/3424996 。
$rows = $html->find('.post_table');
$array = array();
foreach($rows as $go){
$post_text = $go->find('.post_td_right > .post_text')->innertext;
$array[]= array(
'content'=> $post_text
);
}
echo json_encode($array);
我var_dump($ rows)它是一个对象,我真的不知道为什么是错误。需要你的帮助!
答案 0 :(得分:1)
论坛通常有一个RSS源来帮助满足这种要求。事实证明,您正在抓取的网站为您提供此服务:http://rss.forum.lowyat.net/topic/3424996
我们现在可以使用XML解析器而不是DOM刮刀,这将更加高效。例如;
<?php
$rss = file_get_contents('http://rss.forum.lowyat.net/topic/3424996'); //Or use cURL
$xml = simplexml_load_string($rss);
$array = array();
foreach($xml->channel->item as $posts) {
$post = (array) $posts->description;
$array[] = htmlentities($post[0]);
}
echo "<pre>";
echo print_r($array);
echo "</pre>";