2011-11-18 22 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