Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(SQL Server) Crawling the WebIf the Chilkat Spider component only crawls a single site, how do you crawl the Web? The answer is simple: as you crawl a site, the spider collects outbound links and makes them accessible to you. You may then instantiate an instance of the Spider object for each site, and crawl it. The task of keeping track of what sites you've already crawled is left to you. This example retrieves the home page of http://www.joelonsoftware.com/ and displays the outbound links.
-- Important: See this note about string length limitations for strings returned by sp_OAMethod calls. -- CREATE PROCEDURE ChilkatSample AS BEGIN DECLARE @hr int DECLARE @iTmp0 int -- Important: Do not use nvarchar(max). See the warning about using nvarchar(max). DECLARE @sTmp0 nvarchar(4000) DECLARE @spider int -- Use "Chilkat_9_5_0.Spider" for versions of Chilkat < 10.0.0 EXEC @hr = sp_OACreate 'Chilkat.Spider', @spider OUT IF @hr <> 0 BEGIN PRINT 'Failed to create ActiveX component' RETURN END -- The Initialize method may be called with just the domain name, -- such as "www.joelonsoftware.com" or a full URL. If you pass only -- the domain name, you must add URLs to the unspidered list by calling -- AddUnspidered. Otherwise, the URL you pass to Initialize is the 1st -- URL in the unspidered list. EXEC sp_OAMethod @spider, 'Initialize', NULL, 'www.joelonsoftware.com' EXEC sp_OAMethod @spider, 'AddUnspidered', NULL, 'http://www.joelonsoftware.com/' DECLARE @success int EXEC sp_OAMethod @spider, 'CrawlNext', @success OUT DECLARE @i int EXEC sp_OAGetProperty @spider, 'NumOutboundLinks', @iTmp0 OUT SELECT @i = 0 WHILE @i <= @iTmp0 - 1 BEGIN EXEC sp_OAMethod @spider, 'GetOutboundLink', @sTmp0 OUT, @i PRINT @sTmp0 SELECT @i = @i + 1 END EXEC @hr = sp_OADestroy @spider END GO |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.