Posted to tcl by mjanssen at Wed Jul 25 11:55:21 GMT 2007view pretty

set autoupdate "1"
set autoupdatetime "* * * * *"

if {$autoupdate == "1"} {
    bind - time $autoupdatetime timed
} else {
    putlog "\002Webupdate\002: auto-update system is turned off"
}

proc timed {minute hour day month year} {
    global url keyfile
    package require tdom
    package require http
    set page [::http::data [::http::geturl $url]]
    set doc [dom parse -html "<myroot>$page</myroot>"]
    set root [$doc documentElement]
    set nodes [$root selectNodes {//div[@id="keys"]/p/span}]
    if {($nodes == "")} {
	putlog "\002Webupdate\002: update failed"
	return 0
    } else {
	set enter [open $keyfile "w"]
	foreach node $nodes {
	    puts $enter [$node asText]
	}
	close $enter
	putlog "\002Webupdate\002: update completed successfully"
	return 1
    }
}