Sample code for 30+ languages & platforms
PowerBuilder

CanonicalizeUrl

See more Spider Examples

The CanonicalizeUrl method is a utility function that canonicalizes a URL into a standard form to avoid duplicates. For example, "http://www.chilkatsoft.com/" and "http://www.chilkatsoft.com/default.asp" are the same URL.

Chilkat PowerBuilder Downloads

PowerBuilder
integer li_rc
oleobject loo_Spider

loo_Spider = create oleobject
li_rc = loo_Spider.ConnectToNewObject("Chilkat.Spider")
if li_rc < 0 then
    destroy loo_Spider
    MessageBox("Error","Connecting to COM object failed")
    return
end if

//  Does a DNS lookup to find the default domain, which may or may not include the "www." depending on the DNS results.
//  Also domain names are converted to lowercase:
Write-Debug loo_Spider.CanonicalizeUrl("http://www.ChilkatSoft.com/")

//  CanonicalizeUrl will drop the HTML fragment:
Write-Debug loo_Spider.CanonicalizeUrl("http://www.chilkatsoft.com/purchase2.asp#buyZip")

//  If a username/password is in the URL, it gets dropped:
Write-Debug loo_Spider.CanonicalizeUrl("http://username:password@www.chilkatsoft.com/purchase2.asp#buyZip")

//  Port 80 and 443 are dropped:
Write-Debug loo_Spider.CanonicalizeUrl("http://www.chilkatsoft.com:80/purchase2.asp")
Write-Debug loo_Spider.CanonicalizeUrl("https://www.paypal.com:443/")

//  Removes default pages:
//  default.asp, index.html, index.htm, default.html, index.htm, default.htm
//  index.php, index.asp, default.php, .cfm, .aspx, ,php3, .pl, .cgi, .txt, .shtml, .phtml
Write-Debug loo_Spider.CanonicalizeUrl("http://www.chilkatsoft.com/index.asp")
Write-Debug loo_Spider.CanonicalizeUrl("http://www.chilkatsoft.com/index.asp")
Write-Debug loo_Spider.CanonicalizeUrl("http://www.chilkatsoft.com/index.php")
Write-Debug loo_Spider.CanonicalizeUrl("http://www.chilkatsoft.com/index.pl")
Write-Debug loo_Spider.CanonicalizeUrl("http://www.chilkatsoft.com/index.htm")

//  Output:
//  http://chilkatsoft.com/
//  http://chilkatsoft.com/purchase2.asp
//  http://chilkatsoft.com/purchase2.asp
//  http://chilkatsoft.com/purchase2.asp
//  https://www.paypal.com/
//  http://chilkatsoft.com/
//  http://chilkatsoft.com/
//  http://chilkatsoft.com/
//  http://chilkatsoft.com/
//  http://chilkatsoft.com/


destroy loo_Spider