All pastes #79363 Raw Edit

Mine

public text v1 · immutable
·published 2006-07-05 07:53 UTC
rendered paste body
#!/usr/bin/perl -w
# a simple script to sort out the
# websites passed back to you
# when using their reverse ip
# tool to make it so it gives you
# direct links to the websites to
# make your life a little easier
#

use strict;
use LWP::UserAgent;
use HTTP::Headers;
use Getopt::Long;

my ( $ip, $data, $output, $http, $i );
my $options = { i => \$ip, o => \$output };
GetOptions( $options, "i=s", "o:s" );

&usage unless $ip;

if ( $ip =~ /[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}.*/ ) {
    $http = LWP::UserAgent->new() or die;
    $http->agent(
"Mozilla/5.0 (Windows; U; Windows NT 5.1; us-EN; rv:1.8.0.1) Gecko/20060111 Firefox/1.5.1"
    );
    $data = $http->get("http://whois.webhosting.info/$ip");

    if ( $data->is_success ) {

        my $html = $data->content;
        if ( $html =~ /\?pi=(.*)&ob=SLD&oo=ASC">  Last/ ) {
            my @pages;
            my $pages;
            for ( $i = 1 ; $i < $1 ; $i++ ) {
                $pages[$i] = $i;
            }
            foreach my $page (@pages) {
                my $mdata = $http->get("http://whois.webhosting.info/$page");
                my $mhtml = $mdata->content;
                my @matches = $mhtml =~ /whois.webhosting.info\/(.*)\."/g;
                foreach my $parse (@matches) {
                    print "$parse\n";
                }
            }
        }
        else {
            my @matches = $html =~ /whois.webhosting.info\/(.*)\."/g;

            foreach my $parse (@matches) {
                print "$parse\n";
            }
        }
    }
    else {
        print "error loading page";
    }
}
else {
    print "please insert a valid ip\n";
}


sub usage {
    print "whois.webhosting.info reverse ip parser\n";
    print "usage: perl $0 -io\n\n";
    print "  -i\t\tip to run a reverse ip lookup on\n";
    print "  -o\t\tfile to output the results to (default: reverse.html\n";
    exit;
}