Clubic.com : sockets des news

Contenu du snippet

Ce code permet uniquement de visualiser les news "MATERIEL ET LOGICIEL" et "JEUX VIDEO" du site clubic.com.
Par contre, vu que certaines news de leur site se situent à cheval entre 2 lignes, il se peut qu'elles n'y soient pas toutes si l'on compare au site.
Il n'y a pas de dialogue, j'ai pas trop envie d'en faire, je viens à peine de finir un jeu que je publierait bientôt ici qui est complétement en dialogue :)
L'interface n'existe pas non plus, il suffit simplement de taper /clubic

Si quelqu'un veut le continuer, pas de problème, mais simplement laisser écrit quelque part que c'est moi qui ait fait le code, ca serait sympa ^^

Les news s'affichent en écho, ou en say (une au hazard)
Ce code figure dans mon script, avec les sockets "le monde"
Les liens figurent dans la phrase, exemple :

[17:51:10] <@[T]> [ News "Clubic.Com" By -A-r-K-a-n-i-s- :: Partie : Matériel et logiciel :: Date & heure : 23/07 à 15:01 :: News : Filtrage du P2P possible chez les FAI ? :: Lien : www.clubic.com/n/n13427.html ]

Source / Exemple :


on *:sockopen:clubic:{
  if ($sockerr > 0) return
  sockwrite -nt clubic GET http://www.clubic.com HTTP/1.0
  sockwrite -nt clubic $crlf
  unset %o
}
on *:sockread:clubic:{
  if ($sockerr > 0) return
  sockread %a
  if (<li class='new l isin %a) {
    var %b = $remove($replace(%a,pictonews,$chr(165),newheure'>,$chr(165),class='heure'>,$chr(165),</span><a href=',$chr(165),' title=",$chr(165)),</a></li>)
    var %category = $remove($gettok($gettok(%b,2,165),1,39),.gif)
    var %heure = $gettok(%b,3,165)
    var %lien = $+(www.clubic.com,$gettok(%b,4,165))
    var %news = $gettok($gettok(%b,5,165),-1,62)
    write clubic.txt %category %heure %lien %news
  }
}
on *:sockclose:clubic:{
  clubic.sayall
}
alias clubic.sayall {
  var %t = 1
  while $read(clubic.txt,%t) {
    tokenize 32 $read(clubic.txt,%t)
    echo -a 2 $+ $asctime([HH:nn:ss]) 12,1[ 0News $+($chr(40),%t,e,$chr(41)) "Clubic.Com" By 12-14A12-14r12-15K12-0a12-15n12-14i12-14s12- ::0 Catégorie : $1 12::0 Heure : $1 à $2 12::0 News : $4- 12::0 Lien : $3 12]
    inc %t
  }
  if (%clubic.answ == $true) { clubic.say | .timerclubic off | unset %clubic.answ }
}
alias clubic.say {
  unset %clubic.answ
  if (!$1) { var %t = $rand(1,$lines(clubic.txt)) }
  if ($1) { var %t = $1 }
  tokenize 32 $read(clubic.txt,%t)
  if ($active == Status Window) { return }
  say 12,1[ 0News $+($chr(40),%t,e,$chr(41)) "Clubic.Com" By 12-14A12-14r12-15K12-0a12-15n12-14i12-14s12- ::0 Catégorie : $1 12::0 Heure : $1 à $2 12::0 News : $4- 12::0 Lien : $3 12]
}
alias clubic {
  if ($1 isnum) { if (($1 > $lines(clubic.txt)) || ($1 <= 0)) { echo -a 12,1[ 0Il n'existe pas de news numéro $1 ! 12] | return } | clubic.say $1 | return }
  unset %o | unset %date.temp | sockclose clubic | write -c clubic.txt | sockopen clubic www.clubic.com 80 | set %clubic.answ $?!="Mettre une news au hazard sur la fenêtre active ?" | if ((!$sock(clubic,status)) && (%clubic.answ)) { .timer 1 2 clubic.say }
}

Conclusion :


Dernière version sur http://scripts.arkanis.info, avec la commande /check.script une fois que l'add-on Script-ArKanis.mrc a été chargé

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.