C
C
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 C Downloads
#include <C_CkSpider.h>
void ChilkatSample(void)
{
BOOL success;
HCkSpider spider;
int i;
success = FALSE;
spider = CkSpider_Create();
// 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
CkSpider_Initialize(spider,"www.chilkatsoft.com");
// Add the 1st URL:
CkSpider_AddUnspidered(spider,"http://www.chilkatsoft.com/");
// Avoid URLs matching these patterns:
CkSpider_AddAvoidPattern(spider,"*java*");
CkSpider_AddAvoidPattern(spider,"*python*");
CkSpider_AddAvoidPattern(spider,"*perl*");
// Begin crawling the site by calling CrawlNext repeatedly.
for (i = 0; i <= 9; i++) {
success = CkSpider_CrawlNext(spider);
if (success == TRUE) {
// Show the URL of the page just spidered.
printf("%s\n",CkSpider_lastUrl(spider));
// The HTML is available in the LastHtml property
}
else {
// Did we get an error or are there no more URLs to crawl?
if (CkSpider_getNumUnspidered(spider) == 0) {
printf("No more URLs to spider\n");
}
else {
printf("%s\n",CkSpider_lastErrorText(spider));
}
}
// Sleep 1 second before spidering the next URL.
CkSpider_SleepMs(spider,1000);
}
CkSpider_Dispose(spider);
}