All pastes #438983 Raw Edit

Stuff

public text v1 · immutable
·published 2007-04-13 23:43 UTC
rendered paste body
proc dev:get {hmuch from to} {
global cfg_devises
 if {![llength [info commands "::http::geturl"]]} {
   if {[catch {package require http} t]} {
     putlog "Can't load the required http module !"
     return
   }
 }
 ::http::config -useragent $cfg_devises(useragent)
 set cook [::http::geturl "http://fr.finance.yahoo.com/d/quotes.txt?s=$from$to=X&f=sl1d1t1c1ohgv&e=.csv"]
 upvar \#0 $cook state
 set cookies [list]
 foreach {name value} $state(meta) {
        if { $name eq "Set-Cookie" } {
     lappend cookies [lindex [split $value {;}] 0]
     }
 }
 ::http::cleanup $cook
 set http [::http::geturl "http://finance.yahoo.com/d/quotes.txt?s=$from$to=X&f=sl1d1t1c1ohgv&e=.csv" -headers [list Cookie [join $cookies {;}]]]
 set data [::http::data $http]
 set data [string trim [string trim $data "\n"] " "]
 ::http::cleanup $http

 set key [string range $data 0 [expr [string first "," $data]-1]]
 set data [string range $data [expr [string first "," $data]+1] [string length $data]]
 set value [string range $data 0 [expr [string first "," $data]-1]]
 set data [string range $data [expr [string first "," $data]+1] [string length $data]]
 set date [string range $data 0 [expr [string first "," $data]-1]]
 set data [string range $data [expr [string first "," $data]+1] [string length $data]]
 set time [string range $data 0 [expr [string first "," $data]-1]]
 set data ""
 regsub -all -nocase "," $value "." value
 if {$hmuch > 1} {
  scan $hmuch "%e" hmuch
  set value [expr $value * $hmuch]
 } else {
  set hmuch 1
 }
 return "$hmuch $from = $value $to ($date - $time)"
}