wmap 2.7.2 → 2.7.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +10 -16
- data/bin/refresh +5 -5
- data/lib/wmap.rb +1 -1
- data/lib/wmap/site_tracker.rb +1 -4
- data/lib/wmap/{wp_tracker.rb → site_tracker/wp_tracker.rb} +41 -4
- data/lib/wmap/url_crawler.rb +1 -1
- data/version.txt +2 -2
- data/wmap.gemspec +2 -2
- metadata +4 -59
- data/ruby_whois_patches/base_cocca2.rb +0 -149
- data/ruby_whois_patches/kero.yachay.pe.rb +0 -120
- data/ruby_whois_patches/whois.PublicDomainRegistry.com.rb +0 -124
- data/ruby_whois_patches/whois.above.com.rb +0 -61
- data/ruby_whois_patches/whois.adamsnames.tc.rb +0 -107
- data/ruby_whois_patches/whois.aeda.net.ae.rb +0 -105
- data/ruby_whois_patches/whois.ai.rb +0 -112
- data/ruby_whois_patches/whois.arnes.si.rb +0 -121
- data/ruby_whois_patches/whois.ascio.com.rb +0 -91
- data/ruby_whois_patches/whois.cnnic.cn.rb +0 -123
- data/ruby_whois_patches/whois.corporatedomains.com.rb +0 -67
- data/ruby_whois_patches/whois.crsnic.net.rb +0 -108
- data/ruby_whois_patches/whois.denic.de.rb +0 -174
- data/ruby_whois_patches/whois.dk-hostmaster.dk.rb +0 -120
- data/ruby_whois_patches/whois.dns.be.rb +0 -134
- data/ruby_whois_patches/whois.dns.lu.rb +0 -129
- data/ruby_whois_patches/whois.dns.pl.rb +0 -150
- data/ruby_whois_patches/whois.dns.pt.rb +0 -119
- data/ruby_whois_patches/whois.domain.kg.rb +0 -126
- data/ruby_whois_patches/whois.domainregistry.my.rb +0 -123
- data/ruby_whois_patches/whois.domreg.lt.rb +0 -110
- data/ruby_whois_patches/whois.dot.tk.rb +0 -140
- data/ruby_whois_patches/whois.hkirc.hk.rb +0 -121
- data/ruby_whois_patches/whois.isnic.is.rb +0 -130
- data/ruby_whois_patches/whois.je.rb +0 -119
- data/ruby_whois_patches/whois.jprs.jp.rb +0 -137
- data/ruby_whois_patches/whois.kenic.or.ke.rb +0 -140
- data/ruby_whois_patches/whois.markmonitor.com.rb +0 -118
- data/ruby_whois_patches/whois.melbourneit.com.rb +0 -58
- data/ruby_whois_patches/whois.nic.as.rb +0 -96
- data/ruby_whois_patches/whois.nic.at.rb +0 -109
- data/ruby_whois_patches/whois.nic.ch.rb +0 -141
- data/ruby_whois_patches/whois.nic.cl.rb +0 -117
- data/ruby_whois_patches/whois.nic.ec.rb +0 -157
- data/ruby_whois_patches/whois.nic.im.rb +0 -120
- data/ruby_whois_patches/whois.nic.it.rb +0 -170
- data/ruby_whois_patches/whois.nic.lv.rb +0 -116
- data/ruby_whois_patches/whois.nic.ly.rb +0 -127
- data/ruby_whois_patches/whois.nic.mu.rb +0 -27
- data/ruby_whois_patches/whois.nic.mx.rb +0 -123
- data/ruby_whois_patches/whois.nic.net.sa.rb +0 -111
- data/ruby_whois_patches/whois.nic.or.kr.rb +0 -101
- data/ruby_whois_patches/whois.nic.tel.rb +0 -129
- data/ruby_whois_patches/whois.nic.tr.rb +0 -133
- data/ruby_whois_patches/whois.nic.us.rb +0 -129
- data/ruby_whois_patches/whois.nic.ve.rb +0 -135
- data/ruby_whois_patches/whois.norid.no.rb +0 -127
- data/ruby_whois_patches/whois.pandi.or.id.rb +0 -118
- data/ruby_whois_patches/whois.psi-usa.info.rb +0 -63
- data/ruby_whois_patches/whois.registro.br.rb +0 -109
- data/ruby_whois_patches/whois.registrygate.com.rb +0 -55
- data/ruby_whois_patches/whois.rrpproxy.net.rb +0 -61
- data/ruby_whois_patches/whois.sgnic.sg.rb +0 -130
- data/ruby_whois_patches/whois.srs.net.nz.rb +0 -166
- data/ruby_whois_patches/whois.tucows.com.rb +0 -70
- data/ruby_whois_patches/whois.twnic.net.tw.rb +0 -133
@@ -1,70 +0,0 @@
|
|
1
|
-
#--
|
2
|
-
# Ruby Whois
|
3
|
-
#
|
4
|
-
# An intelligent pure Ruby WHOIS client and parser.
|
5
|
-
#
|
6
|
-
# Copyright (c) 2009-2012 Simone Carletti <weppos@weppos.net>
|
7
|
-
#++
|
8
|
-
|
9
|
-
require 'whois/record/parser/base'
|
10
|
-
|
11
|
-
module Whois
|
12
|
-
class Record
|
13
|
-
class Parser
|
14
|
-
|
15
|
-
# Parser for the whois.tucows.com server, added by Yang Li 02/10/2013.
|
16
|
-
class WhoisTucowsCom < Base
|
17
|
-
|
18
|
-
property_supported :registrar do
|
19
|
-
reg=Record::Registrar.new
|
20
|
-
if content_for_scanner =~ /Registration Service Provider:\n((.+\n)+)\n/
|
21
|
-
line_num=1
|
22
|
-
$1.split(%r{\n}).each do |entry|
|
23
|
-
reg["name"] = entry.strip.split(',')[0] if line_num==1
|
24
|
-
reg["organization"] = entry.strip.split(',')[0] if line_num==1
|
25
|
-
reg["url"] = entry.strip.split(',')[1] if line_num==1
|
26
|
-
line_num=line_num+1
|
27
|
-
end
|
28
|
-
end
|
29
|
-
return reg
|
30
|
-
end
|
31
|
-
|
32
|
-
property_supported :admin_contacts do
|
33
|
-
build_contact("Administrative Contact", Whois::Record::Contact::TYPE_ADMIN)
|
34
|
-
end
|
35
|
-
|
36
|
-
property_supported :registrant_contacts do
|
37
|
-
build_contact("Registrant", Whois::Record::Contact::TYPE_REGISTRANT)
|
38
|
-
end
|
39
|
-
|
40
|
-
property_supported :technical_contacts do
|
41
|
-
build_contact("Technical Contact", Whois::Record::Contact::TYPE_TECHNICAL)
|
42
|
-
end
|
43
|
-
|
44
|
-
property_not_supported :billing_contacts
|
45
|
-
|
46
|
-
private
|
47
|
-
|
48
|
-
def build_contact(element, type)
|
49
|
-
reg=Record::Contact.new(:type => type)
|
50
|
-
if content_for_scanner =~ /#{element}:\n((.+\n)+)\n/i
|
51
|
-
line_num=1
|
52
|
-
addrs=''
|
53
|
-
$1.split(%r{\n}).each do |entry|
|
54
|
-
reg["name"]=entry.strip if line_num==1
|
55
|
-
reg["organization"]=entry.strip if line_num==1
|
56
|
-
reg["address"]=entry.strip if line_num==2
|
57
|
-
reg["phone"]=$1 if entry =~ /(\d{7,})/i
|
58
|
-
reg["fax"]=entry.strip.split('Fax:').last.strip if entry =~ /Fax/i
|
59
|
-
reg["email"]=$1 if entry =~ /(\w+\@.+\.\w+)/i
|
60
|
-
line_num=line_num+1
|
61
|
-
end
|
62
|
-
end
|
63
|
-
return reg
|
64
|
-
end
|
65
|
-
# ----------------------------------------------------------------------------
|
66
|
-
|
67
|
-
end
|
68
|
-
end
|
69
|
-
end
|
70
|
-
end
|
@@ -1,133 +0,0 @@
|
|
1
|
-
#--
|
2
|
-
# Ruby Whois
|
3
|
-
#
|
4
|
-
# An intelligent pure Ruby WHOIS client and parser.
|
5
|
-
#
|
6
|
-
# Copyright (c) 2009-2012 Simone Carletti <weppos@weppos.net>
|
7
|
-
#++
|
8
|
-
|
9
|
-
|
10
|
-
require 'whois/record/parser/base'
|
11
|
-
|
12
|
-
|
13
|
-
module Whois
|
14
|
-
class Record
|
15
|
-
class Parser
|
16
|
-
|
17
|
-
#
|
18
|
-
# = whois.twnic.net.tw
|
19
|
-
#
|
20
|
-
# Parser for the whois.twnic.net.tw server.
|
21
|
-
#
|
22
|
-
# NOTE: This parser is just a stub and provides only a few basic methods
|
23
|
-
# to check for domain availability and get domain status.
|
24
|
-
# Please consider to contribute implementing missing methods.
|
25
|
-
# See WhoisNicIt parser for an explanation of all available methods
|
26
|
-
# and examples.
|
27
|
-
#
|
28
|
-
class WhoisTwnicNetTw < Base
|
29
|
-
|
30
|
-
property_supported :status do
|
31
|
-
if available?
|
32
|
-
:available
|
33
|
-
else
|
34
|
-
:registered
|
35
|
-
end
|
36
|
-
end
|
37
|
-
|
38
|
-
property_supported :available? do
|
39
|
-
!!(content_for_scanner.strip == "No Found")
|
40
|
-
end
|
41
|
-
|
42
|
-
property_supported :registered? do
|
43
|
-
!available?
|
44
|
-
end
|
45
|
-
|
46
|
-
|
47
|
-
property_supported :created_on do
|
48
|
-
if content_for_scanner =~ /Record created on ([^ ]+) .+\n/
|
49
|
-
Time.parse($1)
|
50
|
-
end
|
51
|
-
end
|
52
|
-
|
53
|
-
property_not_supported :updated_on
|
54
|
-
|
55
|
-
property_supported :expires_on do
|
56
|
-
if content_for_scanner =~ /Record expires on ([^ ]+) .+\n/
|
57
|
-
Time.parse($1)
|
58
|
-
end
|
59
|
-
end
|
60
|
-
|
61
|
-
property_supported :nameservers do
|
62
|
-
if content_for_scanner =~ /Domain servers in listed order:\n((.+\n)+)\n/
|
63
|
-
$1.split("\n").map do |name|
|
64
|
-
Record::Nameserver.new(:name => name.strip)
|
65
|
-
end
|
66
|
-
end
|
67
|
-
end
|
68
|
-
|
69
|
-
# The following methods are implemented by Yang Li on 01/28/2013
|
70
|
-
# ----------------------------------------------------------------------------
|
71
|
-
property_supported :domain do
|
72
|
-
return $1 if content_for_scanner =~ /Domain Name:\s+(.*)\n/i
|
73
|
-
end
|
74
|
-
|
75
|
-
property_not_supported :domain_id
|
76
|
-
|
77
|
-
property_not_supported :registrar
|
78
|
-
|
79
|
-
property_not_supported :billing_contacts
|
80
|
-
|
81
|
-
property_supported :registrant_contacts do
|
82
|
-
build_contact("Registrant", Whois::Record::Contact::TYPE_REGISTRANT)
|
83
|
-
end
|
84
|
-
|
85
|
-
property_supported :technical_contacts do
|
86
|
-
build_contact_1("Technical Contact", Whois::Record::Contact::TYPE_TECHNICAL)
|
87
|
-
end
|
88
|
-
|
89
|
-
property_supported :admin_contacts do
|
90
|
-
build_contact_1("Administrative Contact", Whois::Record::Contact::TYPE_ADMIN)
|
91
|
-
end
|
92
|
-
|
93
|
-
private
|
94
|
-
|
95
|
-
def build_contact(element, type)
|
96
|
-
reg=Record::Contact.new(:type => type)
|
97
|
-
if content_for_scanner =~ /#{element}:\n((.+\n)+)\n/i
|
98
|
-
line_num=1
|
99
|
-
$1.split(%r{\n}).each do |line|
|
100
|
-
reg["organization"]=line.strip if line_num==1
|
101
|
-
reg["name"]=line.split(%r{\s{2,}})[1] if line_num==2
|
102
|
-
reg["email"]=line.split(%r{\s{2,}})[2] if line_num==2
|
103
|
-
reg["phone"]=line.strip if line_num==3
|
104
|
-
reg["fax"]=line.strip if line_num==4
|
105
|
-
reg["address"]=line.strip if line_num==5
|
106
|
-
reg["city"]=line.strip if line_num==6
|
107
|
-
reg["country_code"]=line.strip if line_num==7
|
108
|
-
line_num=line_num+1
|
109
|
-
end
|
110
|
-
end
|
111
|
-
return reg
|
112
|
-
end
|
113
|
-
|
114
|
-
def build_contact_1(element, type)
|
115
|
-
reg=Record::Contact.new(:type => type)
|
116
|
-
if content_for_scanner =~ /#{element}:\n((.+\n)+)\n/i
|
117
|
-
line_num=1
|
118
|
-
$1.split(%r{\n}).each do |line|
|
119
|
-
reg["name"]=line.split(%r{\s{2,}})[1] if line_num==1
|
120
|
-
reg["email"]=line.split(%r{\s{2,}})[2] if line_num==1
|
121
|
-
reg["phone"]=line.strip if line_num==2
|
122
|
-
reg["fax"]=line.strip if line_num==3
|
123
|
-
line_num=line_num+1
|
124
|
-
end
|
125
|
-
end
|
126
|
-
return reg
|
127
|
-
end
|
128
|
-
# ----------------------------------------------------------------------------
|
129
|
-
|
130
|
-
end
|
131
|
-
end
|
132
|
-
end
|
133
|
-
end
|