Perl
Perl
Avoid URLs Matching Any of a Set of Patterns
See more Spider Examples
Demonstrates how to use "avoid patterns" to prevent spidering any URL that matches a wildcarded pattern. This example avoids URLs containing the substrings "java", "python", or "perl".Chilkat Perl Downloads
use chilkat();
$success = 0;
$spider = chilkat::CkSpider->new();
# The spider object crawls a single web site at a time. As you'll see
# in later examples, you can collect outbound links and use them to
# crawl the web. For now, we'll simply spider 10 pages of chilkatsoft.com
$spider->Initialize("www.chilkatsoft.com");
# Add the 1st URL:
$spider->AddUnspidered("http://www.chilkatsoft.com/");
# Avoid URLs matching these patterns:
$spider->AddAvoidPattern("*java*");
$spider->AddAvoidPattern("*python*");
$spider->AddAvoidPattern("*perl*");
# Begin crawling the site by calling CrawlNext repeatedly.
for ($i = 0; $i <= 9; $i++) {
$success = $spider->CrawlNext();
if ($success == 1) {
# Show the URL of the page just spidered.
print $spider->lastUrl() . "\r\n";
# The HTML is available in the LastHtml property
}
else {
# Did we get an error or are there no more URLs to crawl?
if ($spider->get_NumUnspidered() == 0) {
print "No more URLs to spider" . "\r\n";
}
else {
print $spider->lastErrorText() . "\r\n";
}
}
# Sleep 1 second before spidering the next URL.
$spider->SleepMs(1000);
}