Simple Web Grabber. - 25/10/07 01:49 AM
Hello, Could anyone show me a SIMPLE web grabber, that just gets text from a URL?
alias Web { sockopen Web www.website.com 80 } on *:sockopen:Web: { sockwrite -n GET /path/page.htm HTTP/1.0 sockwrite -n Host: www.website.com sockwrite -n $sockname Accept: */* $+ $crlf $+ $crlf } on *:sockread:Web: { if ($sockerr) { echo -a Error. halt } else { var %temptext sockread %temptext echo -a %temptext } }
on *:TEXT:m~test:#:{ echo Connecting... /sockopen home home.moptop.info 80 } on *:sockopen:home:{ echo Trying to communicate... sockwrite -n home GET /index.php HTTP/1.1 sockwrite -n home Host: home.moptop.info sockwrite -n home $crlf } on *:sockread:home:{ echo Echoing Data... sockread %temp echo %temp }
on *:TEXT:m~test:#:{ echo Connecting... /sockopen home home.moptop.info 80 } on *:sockopen:home:{ echo Trying to communicate... sockwrite -n home GET /index.php HTTP/1.1 sockwrite -n home Host: home.moptop.info sockwrite -n home $crlf } on 1:sockread:home:{ if ($sockerr > 0) return var %x | sockread %x if ($sockbr == 0) return if (%x == $null) { return } if ($regex(%x,/(thistext|orthistext|oreventhistext)/g) == 1) { echo -a $nhtml(%x) } } alias -l nhtml { return $remove($regsubex($1-,/(^[^<]*>|<[^>]*>|<[^>]*$)/g,),$chr(9)) }
on *:TEXT:m~test:#:{ echo Connecting... /sockopen home home.moptop.info 80 } on *:sockopen:home:{ echo Trying to communicate... sockwrite -n home GET /index.php HTTP/1.1 sockwrite -n home Host: home.moptop.info sockwrite -n home $crlf } on 1:sockread:home:{ if ($sockerr > 0) return var %x | sockread %x if ($sockbr == 0) return if (%x == $null) { return } if ($regex(%x,/(thistext|orthistext|oreventhistext)/g) == 1) { echo -a %x } }
on *:TEXT:m~test:#:{ echo Connecting... /sockopen home home.moptop.info 80 } on *:sockopen:home:{ echo Trying to communicate... sockwrite -n home GET /index.php HTTP/1.1 sockwrite -n home Host: home.moptop.info sockwrite -n home $crlf } on *:sockread:home:{ echo Echoing Data... sockread %temp echo %temp }
alias home { if ($sock(home)) { sockclose home } echo -s *** Trying to connect to home.moptop.info sockopen home home.moptop.info 80 } on *:sockopen:home:{ if ($sockerr) { echo -s *** Can't connect. | return } var %% = sockwrite -n $sockname %% GET /index.php HTTP/1.0 %% Host: home.moptop.info %% } on *:sockread:home:{ if ($sockerr) { echo -s *** Sock error. | return } var %s | sockread -fn %s while ($sockbr) { echo -s $+ %s sockread -fn %s } }
alias home { ; /home <chan|nick> if (!$1) { echo -a *** Invalid parameters. /home <chan|nick> | return } if ($sock(home)) { sockclose home } unset %home.* echo -s *** Trying to connect to home.moptop.info sockopen home home.moptop.info 80 sockmark home $1 } on *:sockopen:home_headers:{ if ($sockerr) { echo -s *** Can't connect. | return } var %% = sockwrite -n $sockname %% GET /index.php HTTP/1.0 %% Host: home.moptop.info %% } on *:sockread:home:{ if ($sockerr) { echo -s *** Sock error. | return } var %s | sockread -fn %s while ($sockbr) { if (%home.headers) { msg $sock($sockname).mark $+ %s } elseif (%s == $null) { set %home.headers 1 } sockread -fn %s } } on *:sockclose:home:{ unset %home.* }
alias home { echo -s *** Trying to connect to home.moptop.info sockopen home home.moptop.info 80 } on *:sockopen:home:{ echo Trying to communicate... sockwrite -n home GET / HTTP/1.1 sockwrite -n home Host: home.moptop.info sockwrite -n home $crlf } on 1:sockread:home:{ if ($sockerr > 0) return var %x | sockread -fn %x if ($right($gettok(%x,1,32),1) == :) || (http/1.1 == $gettok(%x,1,32)) { return } elseif ($nhtml(%x) == $null) { return } else { echo -a $nhtml(%x) } } alias -l nhtml { return $remove($regsubex($1-,/( |^[^<]*>|<[^>]*>|<[^>]*$)/g,),$chr(9)) }
<html> Blah blah more words maybe some more and more words </html>
on 1:sockread:home:{ if ($sockerr > 0) return var %x | sockread -fn %x if ($regex(%x,/(Content-|X-Powered|Server:|Date:|HTTP/1)/g) == 1) { return } elseif ($nhtml(%x) == $null) { return } else { echo -a %x } }