2011-11-18 111 views
2

如果有其他类写入这样做,一个链接将是非常棒的。如果不是,我怎么用PHPCrawl做到这一点?PHP的网络爬虫,数据结构和存储,它会与PHPCrawl?

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

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

需要

必须能够只针对某些元素。

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

回答

0

你在问什么是如何使用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分析在这里..

// 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