Share Pastebin
Guest
Public paste!

vikkio88

By: a guest | Feb 8th, 2010 | Syntax: Ruby | Size: 1.23 KB | Hits: 62 | Expires: Never
Copy text to clipboard
  1. #!/usr/bin/env ruby
  2. require 'net/http'
  3.  
  4.  
  5. ip=ARGV[0]
  6. if !(ip=~/\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}/)
  7.         puts "Not a valid ip: retry"
  8.         puts "USAGE:"
  9.         puts "      ruby #{$0} IPADDRESS"
  10.         exit
  11. end
  12. http = Net::HTTP.new('www.ip2location.com')
  13.   resp = http.get("/#{ip}")
  14.   stato= resp.body.match(/<span id="dgLookup__ctl2_lblICountry">((.|\s)*?)<\/span>/).captures
  15.   regione= resp.body.match(/<span id="dgLookup__ctl2_lblIRegion">((.|\s)*?)<\/span>/).captures
  16.   citta= resp.body.match(/<span id="dgLookup__ctl2_lblICity">((.|\s)*?)<\/span>/).captures
  17.   netsp= resp.body.match(/<span id="dgLookup__ctl2_lblINetSpeed">((.|\s)*?)<\/span>/).captures
  18.   isp= resp.body.match(/<span id="dgLookup__ctl2_lblIISP">((.|\s)*?)<\/span>/).captures
  19.   dom= resp.body.match(/<span id="dgLookup__ctl2_lblIDomain">((.|\s)*?)<\/span>/).captures
  20.  
  21.   puts "***********************"
  22.   puts "*   ViRu-IpLocator    *"
  23.   puts "*coded by vikkio88    *"
  24.   puts "***********************"
  25.   puts "Stato:    "+stato[0].to_s
  26.   puts "Regione:  "+regione[0].to_s
  27.   puts "Cittą:    "+citta[0].to_s
  28.   puts "_______________________"
  29.   puts "netSpeed: "+netsp[0].to_s
  30.   puts "isp:      "+isp[0].to_s
  31.   puts "domain:   "+dom[0].to_s
  32.   puts "_______________________"
  33.   puts