【问题标题】:PHP web crawler, data structure and storage, Will it work with PHPCrawl?PHP网络爬虫,数据结构和存储,它可以与PHPCrawl一起使用吗?
【发布时间】:2011-11-18 04:46:17
【问题描述】:

如果有其他类可以做到这一点,那么链接会很棒。如果没有,我该如何使用 PHPCrawl?

是否可以根据特定于网站的一组规则存储来自已抓取网站的特定信息?例如,[div.wantThis, img#defaultPicture] 是为站点 A 返回的数组,而只有 [div.shortTextContent] 是为站点 B 返回的数组?

在 PHPCrawl 中,如何从 $page_data 数组中获取这些信息?

需要

必须只能定位某些元素。

能够从变量(可以是指定要定位的元素的数组)中读取数据存储规则。

【问题讨论】:

    标签: php web-crawler phpcrawl


    【解决方案1】:

    您要问的是如何使用 PHPCrawl 解析站点 A 中的特定内容和站点 B 中的一些其他特定内容。

    对于站点特定的解析样式,可以遵循 if-else 方法:

    for url in urls:
        content = crawl(url)
        if(url of type 1?):
            extract_style1(content)
        else-if(url of type 2?):
            extract_style2(content)
        else:
            extract_styledefault(content)
    


    对于特定内容提取,可以使用以下算法:

    注意:有很多可用的解析技术,我在这里实现HTML DOM Parsing..

    // Create DOM from your PHP Crawl Data Source
    $html = $page_data[source]
    
    // Find all images 
    foreach($html->find('img') as $element) 
           echo $element->src . '<br>';
    
    // Find all links 
    foreach($html->find('a') as $element) 
           echo $element->href . '<br>';
    

    参考:

    HTML DOM
    PHPCrawl Example

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-26
      • 2013-04-16
      • 2010-12-19
      • 1970-01-01
      相关资源
      最近更新 更多