All pastes #446327 Raw Edit

Miscellany

public text v1 · immutable
·published 2007-04-18 12:42 UTC
rendered paste body
alias c1 { return $+($chr(3),12,$1-) } 
alias c2 { return $+($chr(3),13,$1-) } 
alias c3 { return $+($chr(3),04,$1-) } 

on *:connect:{
  timer 0 30 sockopen newss www.runescape.com 80

}
on *:SOCKOPEN:newss: {
  sockwrite -nt $sockname GET /lang/en/aff/runescape/title.ws HTTP/1.1
  sockwrite -nt $sockname Host: www.runescape.com
  sockwrite -nt $sockname $crlf
}

on *:SOCKREAD:newss: {
  if ($sockerr) { halt }
  else {
    var %socke
    sockread %socke
    if (*class="newsdate">*</span>*/dt>* iswm %socke) {
      tokenize 32 $htmlfree($replace($gettok(%socke,3,34),</span>,$chr(32)))
      if ($readini(news.ini,NEWS,Titel) == $htmlfree($2-)) { sockclose newss }
      else {
        if (*<td style="text-align: justify; vertical-align: top;">*</td>* iswm %socke) {   
          tokenize 32 %socke
          set %nieuws $htmlfree($gettok(%socke,3,34)) 
        }
        if (*<div style="margin-top: 0.5em;"><a href="*">* iswm %socke) {
          tokenize 32 %socke 
          set %linky $gettok(%socke,4,34)
        }
        /amsg $c3(<) $+ $c2 NEW RS UPDATE $+ $c3(>) $c2(Datum) $+ $c3(:) $+ $c1 $htmlfree($1) $c2(Onderwerp) $+ $c3(:) $+ $c1 $htmlfree($2-) 
        /amsg  $c2(Nieuws) $+ $c3(:) $c1(%nieuws)
        /amsg $c2(Link) $+ $c3(:) $c1(%linky)    
        /writeini news.ini NEWS Titel $htmlfree($2-) 
        unset %newssway
        sockclose newss
      }
    }
  }
}


alias htmlfree { 
  var %x, %i = $regsub($1-,/(^[^<]*>|<[^>]*>|<[^>]*$)/g,$null,%x), %x = $remove(%x,&nbsp;) 
  return %x 
}