如果有其他类可以实现这一点,那么链接就太棒了。如果没有,我如何使用PHPCrawl??
是否可以根据一组特定于网站的规则从爬行站点存储特定信息?例如,[div.wantThis, img#defaultPicture]是站点A返回的数组,只有[div.shortTextContent]才是站点B返回的数组?
在PHPCrawl中,如何从$page_data数组中获取这些信息?
需要
必须能够只针对特定的元素。
能够从变量(可以是指定要目标的元素的数组)中读取数据存储规则。
发布于 2011-11-29 09:30:08
您要问的是如何使用PHPCrawl解析站点A中的特定内容和站点B中的其他特定内容。
对于站点特定的解析样式,可以遵循下面的if-style方法:
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解析。
// 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实例
https://stackoverflow.com/questions/8177888
复制相似问题