为聚合站点爬行和处理HTML

时间:2010-12-08 08:32:43

标签: php html dom web-crawler aggregate

我正在使用PHP中的抓取脚本。我正在使用PHP Simple HTML DOM Parser。

获取HTML后,我需要从每个页面中仅提取一些信息,然后将这些信息汇总到我网站上自己的HTML页面中。

我无法理解如何继续这样做。

感谢任何帮助。

我想提取一些帖子(如果与特定的地理位置和主题相关)

2 个答案:

答案 0 :(得分:0)

正则表达式可能是从数据中获取复杂信息的方法,但对于简单标记,您可以使用以下内容:


//从URL或文件创建DOM $ html = file_get_html('http://www.google.com/');

//查找所有图像
foreach($ html-> find('img')as $ element)
       echo $ element-> src。 '&LT峰; br>';

//查找所有链接
foreach($ html-> find('a')as $ element)
       echo $ element-> href。 '&LT峰; br>';

答案 1 :(得分:0)

你可以这样做:

$doc = new DomDocument();
@$doc->loadHTMLFile($url);
$xpath = new DOMXpath($doc);
$nodeList = $xpath->query("your-xpath-query");
foreach ($nodeList as $node) {
    // grab the content, attributes or whatever you'r looking for
}

使用Xpath查询,您不必手动遍历DOM树,并且您的脚本可以更好地抵御您抓取的站点中的结构更改。

我希望能让你走上正轨。有关更详细的示例,您必须提供更多信息。