本文整理汇总了PHP中HtmlPage::getLinks方法的典型用法代码示例。如果您正苦于以下问题:PHP HtmlPage::getLinks方法的具体用法?PHP HtmlPage::getLinks怎么用?PHP HtmlPage::getLinks使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类HtmlPage
的用法示例。
在下文中一共展示了HtmlPage::getLinks方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: crawl
public function crawl($startPage, HtmlPage $doc, ParsedPagesList $parsedPages)
{
$linkStack[] = $startPage;
while (count($linkStack) > 0) {
$url = array_shift($linkStack);
if ($parsedPages->isUrlInList($url)) {
continue;
}
echo sprintf('==> Crawling %s ...', urldecode($url));
$startTime = microtime(true);
$html = CurlWrapper::get($url);
if ($html === false) {
echo 'Failed due to curl error' . PHP_EOL;
continue;
}
$doc->load($html);
$imageCount = $doc->getImgTagCount();
$parseTime = $this->convertTimeToMiliseconds(microtime(true) - $startTime);
$parsedPages->add(new Record($url, $imageCount, $parseTime));
echo sprintf("Done (%d)\n", memory_get_usage());
$links = $doc->getLinks();
foreach ($links as $link) {
$href = $doc->getHrefOfLink($link);
if (UrlTools::isLocalLink($href)) {
$href = $startPage . UrlTools::extractLocalPath($href);
}
if (UrlTools::isDomainLink($startPage, $href)) {
$linkStack[] = $href;
}
}
}
}