[Résolu] Youtube tcl (Zurl.tcl) ne fonctionne plus
#16
Merci MenzAgitat Smile
Entre temps j'ai trouver le code avec la bonne syntaxe sur ce site
https://tools.eggdrop.fr/pasteme/view/db59cb06
il se charge bien par contre quand j'entre un lien youtube j'ai un message d'erreur en pl
Code :
[01:41:41] «Thor» [01:41:41] http://www.youtube.com/watch?v=NPQD7KxutcM
[01:41:41] «Thor» [01:41:41] Tcl error [check_url]: can't read "a": no such variable
Etant très loin de se niveau de codage je ne vois pas du tout ou regarder pour résoudre le problème.

@CrazyCat oui mon eggy 1.8 est bien compiler avec le ssl et utilise un port ssl pour la connection
Bien à vous.
Bye. Smile
Répondre Avertir
#17
(18/04/2017, 01:20)MenzAgitat a écrit : Mauvaise syntaxe pour http::register en tout cas.

Oui, j'ai un peu trop nettoyé mon code et viré l'essentiel Sad

Pour l'erreur qui apparait, c'est que la page de youtube a très certainement changé et que la regexp qui permet de trouver les différents éléments n'est plus bonne:
TCL
set l [regexp -all -inline -- {<meta name="title" content="(.*?)">.*?<div class="watch-view-count">(.*?)</div>.*?<span class="likes-count">(.*?)</span>.*?<span class="dislikes-count">(.*?)</span>} $data]



Je vais essayer de trouver le temps de refaire la bonne.

P.S.: très bon choix de vidéo d'exemple Smile

Edit
Cette regexp semble fonctionner:
TCL
set l [regexp -all -inline -- {<meta name="title" content="(.*?)">.*?<div class="watch-view-count">(.*?)</div>.*?like-button-renderer-like-button-unclicked.*?<span class="yt-uix-button-content">(.*?)</span>.*?like-button-renderer-dislike-button-unclicked.*?<span class="yt-uix-button-content">(.*?)</span>} $data]


Répondre
#18
Bonjour,

J'ai modifié le regexp comme indiqué au dessus mais j'ai toujours le même messages d'erreur en PL.
Code :
[12:10:24] «Thor» [12:10:24] http://www.youtube.com/watch?v=NPQD7KxutcM
[12:10:24] «Thor» [12:10:24] Tcl error [check_url]: can't read "a": no such variable
Oui oui toujours le même choix musical Smile

Bien à vous.

Bye. Smile
Répondre Avertir
#19
@Alucard, Je ne sais pas ou insérer la ligne "http::register https 443" <= dans le bind pubm

TCL
::http::register https 443 [list tls::socket -tls1 1]



Genre sa pour le register au propre ?
Vous interdisez les erreurs, vous empêchez ainsi la victoire.

Ma super kikoo-page loll
Répondre Avertir
#20
Merci @aliasangelius
(18/04/2017, 01:51)Alucard`68 a écrit : Merci MenzAgitat Smile
Entre temps j'ai trouver le code avec la bonne syntaxe sur ce site
https://tools.eggdrop.fr/pasteme/view/db59cb06
il se charge bien par contre quand j'entre un lien youtube j'ai un message d'erreur en pl
Code :
[01:41:41] «Thor» [01:41:41] http://www.youtube.com/watch?v=NPQD7KxutcM
[01:41:41] «Thor» [01:41:41] Tcl error [check_url]: can't read "a": no such variable
Etant très loin de se niveau de codage je ne vois pas du tout ou regarder pour résoudre le problème.

@CrazyCat oui mon eggy 1.8 est bien compiler avec le ssl et utilise un port ssl pour la connection
Bien à vous.
Bye. Smile
il se trouve que maintenant il y a un problème de regexp due d'après se que j'ai compris à un changement récent du site.
Je ne suis qu'un tout petit codeur et sur se coup la je suis totalement dépassé lol.
CrazyCat m'as proposé un regexp mais hélas il ne fonctionne pas... (oui j'ai bien rehash l'eggy et même restart pour être sur)

Bien à vous.

Bye. Smile
Répondre Avertir
#21
Je pense que le souci, c'est qu'il n'y a que 4 parenthèses capturantes alors que le script en attends 5.
Je ferai des tests ce soir (là j'ai juste essayé la regexp) pour refaire ça propre.
Répondre
#22
Il existe une api youtube sinon, mais ce script n'a malheureusement pas été conçu pour s'en servir.
Répondre Avertir
#23
Code fonctionnel : https://scripts.eggdrop.fr/details-Youtu...-s237.html
Vous interdisez les erreurs, vous empêchez ainsi la victoire.

Ma super kikoo-page loll
Répondre Avertir
#24
Merci aliasangelius pour se script parfaitement opérationnel Smile
Répondre Avertir


Atteindre :


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