24/03/2008, 22:42
(Modification du message : 24/03/2008, 22:44 par hearty120120.)
Bonjour,
j'ai quelques soucis avec le dictionnaire du jeu Motus
ca me donne ca sur la party line :
[Motus] La connexion à http://dictionnaire.tv5.org/dictionnaire...rmis&che=1 n'a pas pu s'établir. Impossible d'afficher la définition du mot.
voila la parti
j'ai quelques soucis avec le dictionnaire du jeu Motus
ca me donne ca sur la party line :
[Motus] La connexion à http://dictionnaire.tv5.org/dictionnaire...rmis&che=1 n'a pas pu s'établir. Impossible d'afficher la définition du mot.
voila la parti
tcl
##### Affichage de la définition d'un mot
proc motus::dico {mot} {
variable useragent paragraphs
set URL_site "http://dictionnaire.tv5.org/dictionnaires.asp?Action=1¶m=$mot&che=1"
set res ""
::http::config -useragent $useragent
catch { set token [::http::geturl "$URL_site" -timeout 5000] }
if {![info exists token]} {
putlog "\00304\002\[Motus\]\002\003 La connexion à \00312\037$URL_site\037\003 n'a pas pu s'établir. Impossible d'afficher la définition du mot."
return
}
if {[::http::status $token] == "ok"} {
regexp "<small>(.+?)</small>" [::http::data $token] res
if { $res != "" && [lsearch -exact [split $res] "color='#911409'>Lexique"] == -1 } {
regsub -all "\n" $res " " res
regsub -all "<B>>" $res "\037Définition\037 : \002" res
regsub -all "</B></FONT><BR><B>" $res "" res
regsub -all "</B></FONT><BR> <FONT COLOR=RED>" $res " <FONT COLOR=RED>" res
regsub -all "</B></FONT><BR>" $res "\003 :" res
regsub -all "<FONT COLOR=RED>" $res "\002[color 14]" res
regsub -all "<BR>" $res "\n" res
regsub -all "<\[^<\]*>" $res "" res
regsub -all "•" $res "[color 07]|\003" res
regsub -all "Â " $res " " res
set res [encoding convertfrom "utf-8" $res ]
if {[string length $res] > 448} {set res "[string range $res 0 [string first . $res 300]] \n [string range $res [expr {[string first . $res 300] + 1 }] [string first . $res 600]] \n [string range $res [expr {[string first . $res 600] + 1 }] [string first . $res 900]] \n [string range $res [expr {[string first . $res 900] + 1 }] [string first . $res 1200]]"}
if {[string match -nocase "*Une remarque sur le dictionnaire ?*" $res] == 1} {
set res {"[color 14]La définition n'a pas pu être récupérée, erreur d'analyse des données.\003"}
}
set res [split $res "\n"]
set counter 0
foreach line $res {
if {[string trim $line] != "" && [string trim $line] != " "} {
incr counter
puthelp "PRIVMSG $motus::motus_chan :$line"
if {$counter >= $paragraphs} {
::http::cleanup $token
return
}
}
}
}
}
::http::cleanup $token
return
}