[Demande] Besoin d'aide pour youtubeURL.tcl
#1
Bonjour
J'ai trouvé le code en PJ sur le net il fonctionne bien sauf pour les nombres
voici le résultat:
.[11:05:21] <+hades_48|OQP> https://www.youtube.com/watch?v=_LTsjwiTN7w
réponse du bot:
.[11:05:22] <@Vigil-00> YouTube Titre & Interprete: Céline Dion - Parler Ã, mon père Nombre de vues: 13Â J'aime: 43Â,427 N'aime pas: 2Â,112 || Ajoutée le 17 sept. 2012 par: CelineDionVEVO Durée: 3 Minute(s) 11 Seconde(s)
La réalité est nombre de vues 13 262 033 j'aime 43427 n'aime pas 2 112
quelqu'un pourrait-il m'aider à résoudre ce problème
merci
Le mieux est souvent l'ennemi du bien !![font=Times New Roman][/font]
Répondre Avertir
#2
Le problème vient des rexexp qui sont de la forme:
TCL
regexp -nocase {watch-view-count">([^\x20]*)\s.*<\/span>} $youtubevar match youtubeviews


le le [^\x20] et le \s.* font s'arrêter au premier espace, hors youtube mets désormais un espace en séparateur de milliers.

Essaye avec:
TCL
regexp -nocase {watch-view-count">([^<]*)<\/span>} $youtubevar match youtubeviews


Ou:
TCL
regexp -nocase {watch-view-count">([0-9\x20]*)<\/span>} $youtubevar match youtubeviews


Répondre
#3
Merci CrazyCat
ça fonctionne avec ta première proposition.
.[12:39:37] <@Vigil-00> YouTube Titre & Interprete: Céline Dion - Parler Ã, mon père Nombre de vues: 13Â,262Â,411 J'aime: 43Â,429 N'aime pas: 2Â,111 || Ajoutée le 17 sept. 2012 par: CelineDionVEVO Durée: 3 Minute(s) 11 Seconde(s)
Il y a toujours ce "Â"
est-il possible de l’enlever ?
merci
Le mieux est souvent l'ennemi du bien !![font=Times New Roman][/font]
Répondre Avertir
#4
Le souci me semble provenir des format %c qu'il y a dans la procédure yturldehex.
Je n'ai pas trop le temps de regarder plus avant, mais explore cette voie.
Répondre
#5
Dans la procédure yturldehex j'ai modifié les lignes suivantes

set string [subst [regsub -nocase -all {\&#([0-9]{2});} $string {[format %c \1]}]]
return [string map {&quot; \" \xa0 ","} $string]

par

set string [subst [regsub -nocase -all {\&#([0-9]{2,4});} $string {[format %c \1]}]]
return [string map {&quot; \"} $string]
ça fonctionne bien voila le résulta
<+Vigil-01> YouTube Titre & Interprete: Céline Dion - Parler à mon père Nombre de vues: 13 263 711 J'aime: 43 437 N'aime pas: 2 111 || Ajoutée le 17 sept. 2012 par: CelineDionVEVO Durée: 3 Minute(s) 11 Seconde(s)

Merci encore pour ton aide
Le mieux est souvent l'ennemi du bien !![font=Times New Roman][/font]
Répondre Avertir


Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)
Tchat 100% gratuit -Discutez en toute liberté