Web crawler 如何抓取网站页面并在所有页面上搜索特定文本?
我正在使用简单的HTMLDOM库开发一个网络爬虫。我有一个网站的所有链接。现在我想抓取我得到的所有链接/页面,搜索并在所有页面上找到一些特定的文本 这是我获取所有链接的代码Web crawler 如何抓取网站页面并在所有页面上搜索特定文本?,web-crawler,Web Crawler,我正在使用简单的HTMLDOM库开发一个网络爬虫。我有一个网站的所有链接。现在我想抓取我得到的所有链接/页面,搜索并在所有页面上找到一些特定的文本 这是我获取所有链接的代码 <?php include_once("simple_html_dom.php"); set_time_limit(0); $path='http://www.barringtonsports.com'; $html = file_get_contents($path); $dom = new DOMDocument
<?php
include_once("simple_html_dom.php");
set_time_limit(0);
$path='http://www.barringtonsports.com';
$html = file_get_contents($path);
$dom = new DOMDocument();
@$dom->loadHTML($html);
$xpath = new DOMXPath($dom);
$hrefs = $xpath->evaluate("/html/body//a");
for ($i = 0; $i < $hrefs->length; $i++ ) {
$href = $hrefs->item($i);
$url = $href->getAttribute('href');
$nurl = $path.$url.'<br>';
echo $nurl;
}
?>
以下是一些伪代码:
Create a list of $interestingURLs
Create a list of $matchingURLs
Call Search with your root site, Search("barringtonsports.com")
Search($site):
1: append $site to $interestingURLs
2: $searchedSites = 0
3: for each ($entry in $interestingURLs):
3a: SearchForSite($entry)
3b: $searchedSites++
3c: if ($searchedSites > MAX_SEARCHES):
3c1: for each ($site in $matchingURLs) print $site
SearchForSite($site):
1: load dom for $site
2: search dom for interesting content, if exists - add $site to $matchingURLs
3: extract all links
4: for each link append to the end of $interestingURLs
下一个工作顺序是对机器专家列表进行相关性排序。一种方法是使用地图/字典,其中url是索引,相关性等级是值
祝你好运