All pastes #446948 Raw Edit

Miscellany

public text v1 · immutable
·published 2007-04-18 19:10 UTC
rendered paste body
on $*:TEXT:/^[!@]rsnews/Si:#:{ 
  sockclose rsnews
  set %rsnews.out $iif($left($1,1) == @, msg $chan, notice $nick) 
  sockopen rsnews runescape.com 80
}

on *:SOCKOPEN:rsnews: {
  sockwrite -nt $sockname GET /lang/en/aff/runescape/title.ws HTTP/1.1 
  sockwrite -nt $sockname Host: runescape.com
  sockwrite -nt $sockname $crlf
}
on *:SOCKREAD:rsnews:{
  if ($sockerr) {
    %rsnews.out 7[14RsNews7]14 Socket error, please notify my owner.
    halt
  } 
  else {
    var %rsnewsread
    sockread %rsnewsread 
    if (*<dt><span class="newsdate">* iswm %rsnewsread ) {
      noop $regex(%rsnewsread,/<dt><span class="newsdate">(.*?)</span>/Si)
      set %rsnews.date $remove($regml(1),<dt><span class="newsdate">,</span>)
      noop $regex(%rsnewsread,/</span>(.*?)</dt>/Si)
      set %rsnews.title $remove($regml(1),</span>,</dt>)
    }
    if (*<td style="text-align: justify; vertical-align: top;">* iswm %rsnewsread ) {
      noop $regex(%rsnewsread,/<td style="text-align: justify; vertical-align: top;">(.*?)</td>/Si)
      set %rsnews.news $remove($regml(1),<td style="text-align: justify; vertical-align: top;">,</td>)  
      %rsnews.out 7[14RsNews7]14 Date:7 %rsnews.date 14Title:7 %rsnews.title 
      %rsnews.out 7[14RsNews7]14 %rsnews.news
      unset %rsnews.*
      sockclose rsnews
    }
  }
}