wmap 2.7.2 → 2.7.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (66) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +10 -16
  3. data/bin/refresh +5 -5
  4. data/lib/wmap.rb +1 -1
  5. data/lib/wmap/site_tracker.rb +1 -4
  6. data/lib/wmap/{wp_tracker.rb → site_tracker/wp_tracker.rb} +41 -4
  7. data/lib/wmap/url_crawler.rb +1 -1
  8. data/version.txt +2 -2
  9. data/wmap.gemspec +2 -2
  10. metadata +4 -59
  11. data/ruby_whois_patches/base_cocca2.rb +0 -149
  12. data/ruby_whois_patches/kero.yachay.pe.rb +0 -120
  13. data/ruby_whois_patches/whois.PublicDomainRegistry.com.rb +0 -124
  14. data/ruby_whois_patches/whois.above.com.rb +0 -61
  15. data/ruby_whois_patches/whois.adamsnames.tc.rb +0 -107
  16. data/ruby_whois_patches/whois.aeda.net.ae.rb +0 -105
  17. data/ruby_whois_patches/whois.ai.rb +0 -112
  18. data/ruby_whois_patches/whois.arnes.si.rb +0 -121
  19. data/ruby_whois_patches/whois.ascio.com.rb +0 -91
  20. data/ruby_whois_patches/whois.cnnic.cn.rb +0 -123
  21. data/ruby_whois_patches/whois.corporatedomains.com.rb +0 -67
  22. data/ruby_whois_patches/whois.crsnic.net.rb +0 -108
  23. data/ruby_whois_patches/whois.denic.de.rb +0 -174
  24. data/ruby_whois_patches/whois.dk-hostmaster.dk.rb +0 -120
  25. data/ruby_whois_patches/whois.dns.be.rb +0 -134
  26. data/ruby_whois_patches/whois.dns.lu.rb +0 -129
  27. data/ruby_whois_patches/whois.dns.pl.rb +0 -150
  28. data/ruby_whois_patches/whois.dns.pt.rb +0 -119
  29. data/ruby_whois_patches/whois.domain.kg.rb +0 -126
  30. data/ruby_whois_patches/whois.domainregistry.my.rb +0 -123
  31. data/ruby_whois_patches/whois.domreg.lt.rb +0 -110
  32. data/ruby_whois_patches/whois.dot.tk.rb +0 -140
  33. data/ruby_whois_patches/whois.hkirc.hk.rb +0 -121
  34. data/ruby_whois_patches/whois.isnic.is.rb +0 -130
  35. data/ruby_whois_patches/whois.je.rb +0 -119
  36. data/ruby_whois_patches/whois.jprs.jp.rb +0 -137
  37. data/ruby_whois_patches/whois.kenic.or.ke.rb +0 -140
  38. data/ruby_whois_patches/whois.markmonitor.com.rb +0 -118
  39. data/ruby_whois_patches/whois.melbourneit.com.rb +0 -58
  40. data/ruby_whois_patches/whois.nic.as.rb +0 -96
  41. data/ruby_whois_patches/whois.nic.at.rb +0 -109
  42. data/ruby_whois_patches/whois.nic.ch.rb +0 -141
  43. data/ruby_whois_patches/whois.nic.cl.rb +0 -117
  44. data/ruby_whois_patches/whois.nic.ec.rb +0 -157
  45. data/ruby_whois_patches/whois.nic.im.rb +0 -120
  46. data/ruby_whois_patches/whois.nic.it.rb +0 -170
  47. data/ruby_whois_patches/whois.nic.lv.rb +0 -116
  48. data/ruby_whois_patches/whois.nic.ly.rb +0 -127
  49. data/ruby_whois_patches/whois.nic.mu.rb +0 -27
  50. data/ruby_whois_patches/whois.nic.mx.rb +0 -123
  51. data/ruby_whois_patches/whois.nic.net.sa.rb +0 -111
  52. data/ruby_whois_patches/whois.nic.or.kr.rb +0 -101
  53. data/ruby_whois_patches/whois.nic.tel.rb +0 -129
  54. data/ruby_whois_patches/whois.nic.tr.rb +0 -133
  55. data/ruby_whois_patches/whois.nic.us.rb +0 -129
  56. data/ruby_whois_patches/whois.nic.ve.rb +0 -135
  57. data/ruby_whois_patches/whois.norid.no.rb +0 -127
  58. data/ruby_whois_patches/whois.pandi.or.id.rb +0 -118
  59. data/ruby_whois_patches/whois.psi-usa.info.rb +0 -63
  60. data/ruby_whois_patches/whois.registro.br.rb +0 -109
  61. data/ruby_whois_patches/whois.registrygate.com.rb +0 -55
  62. data/ruby_whois_patches/whois.rrpproxy.net.rb +0 -61
  63. data/ruby_whois_patches/whois.sgnic.sg.rb +0 -130
  64. data/ruby_whois_patches/whois.srs.net.nz.rb +0 -166
  65. data/ruby_whois_patches/whois.tucows.com.rb +0 -70
  66. data/ruby_whois_patches/whois.twnic.net.tw.rb +0 -133
@@ -1,129 +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.nic.us parser
19
- #
20
- # Parser for the whois.nic.us 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 WhoisNicUs < Base
29
-
30
- property_supported :status do
31
- content_for_scanner.scan(/Domain Status:\s+(.+?)\n/).flatten
32
- end
33
-
34
- property_supported :available? do
35
- !!(content_for_scanner =~ /Not found:/)
36
- end
37
-
38
- property_supported :registered? do
39
- !available?
40
- end
41
-
42
-
43
- property_supported :created_on do
44
- if content_for_scanner =~ /Domain Registration Date:\s+(.+?)\n/
45
- Time.parse($1)
46
- end
47
- end
48
-
49
- property_supported :updated_on do
50
- if content_for_scanner =~ /Domain Last Updated Date:\s+(.+?)\n/
51
- Time.parse($1)
52
- end
53
- end
54
-
55
- property_supported :expires_on do
56
- if content_for_scanner =~ /Domain Expiration Date:\s+(.+?)\n/
57
- Time.parse($1)
58
- end
59
- end
60
-
61
-
62
- property_supported :nameservers do
63
- content_for_scanner.scan(/Name Server:\s+(.+)\n/).flatten.map do |name|
64
- Record::Nameserver.new(:name => name.downcase)
65
- end
66
- end
67
-
68
- # The following methods are implemented by Yang Li on 01/24/2013
69
- # ----------------------------------------------------------------------------
70
- property_supported :domain do
71
- return $1 if content_for_scanner =~ /Domain Name:\s+(.*)\n/i
72
- end
73
-
74
- property_supported :domain_id do
75
- return $1 if content_for_scanner =~ /Domain ID:\s+(.*)\n/i
76
- end
77
-
78
- property_supported :registrar do
79
- reg=Record::Registrar.new
80
- content_for_scanner.scan(/^(.*Registrar.*):\s+(.+)\n/).map do |entry|
81
- reg["name"] = entry[1] if entry[0] =~ /Sponsoring Registrar$/i
82
- reg["organization"] = entry[1] if entry[0] =~ /Sponsoring Registrar$/i
83
- reg["url"] = entry[1] if entry[0] =~ /URL/i
84
- end
85
- return reg
86
- end
87
-
88
- property_supported :registrant_contacts do
89
- build_contact("Registrant", Whois::Record::Contact::TYPE_REGISTRANT)
90
- end
91
-
92
- property_supported :admin_contacts do
93
- build_contact("Administrative Contact", Whois::Record::Contact::TYPE_ADMIN)
94
- end
95
-
96
- property_supported :technical_contacts do
97
- build_contact("Technical Contact", Whois::Record::Contact::TYPE_TECHNICAL)
98
- end
99
-
100
- property_supported :billing_contacts do
101
- build_contact("Billing Contact", Whois::Record::Contact::TYPE_BILLING)
102
- end
103
-
104
- private
105
-
106
- def build_contact(element, type)
107
- reg=Record::Contact.new(:type => type)
108
- content_for_scanner.scan(/^(#{element}.*):\s+(.+)\n/).map do |entry|
109
- reg["id"]=entry[1] if entry[0] =~ /#{element}\sID/i
110
- reg["name"]=entry[1] if entry[0] =~ /#{element}\sName/i
111
- reg["organization"]=entry[1] if entry[0]=~ /#{element}\sOrganization/i
112
- reg["address"]=entry[1] if entry[0]=~ /#{element}\sAddress1/i
113
- reg["city"]= entry[1] if entry[0]=~ /#{element}\sCity/i
114
- reg["zip"]=entry[1] if entry[0]=~ /#{element}\sPostal\sCode/i
115
- reg["state"]=entry[1] if entry[0]=~ /#{element}\sState\/Province/i
116
- reg["country"]=entry[1] if entry[0]=~ /#{element}\sCountry$/i
117
- reg["country_code"]=entry[1] if entry[0]=~ /#{element}\sCountry\sCode/i
118
- reg["phone"]=entry[1] if entry[0]=~ /#{element}\sPhone\sNumber/i
119
- reg["fax"]=entry[1] if entry[0]=~ /#{element}\sFacsimile\sNumber/i
120
- reg["email"]=entry[1] if entry[0]=~ /#{element}\sEmail/i
121
- end
122
- return reg
123
- end
124
- # ----------------------------------------------------------------------------
125
-
126
- end
127
- end
128
- end
129
- end
@@ -1,135 +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.nic.ve parser
19
- #
20
- # Parser for the whois.nic.ve 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 WhoisNicVe < Base
29
-
30
- property_supported :status do
31
- if content_for_scanner =~ /Estatus del dominio: (.+?)\n/
32
- case $1.downcase
33
- when "activo"
34
- :registered
35
- when "suspendido"
36
- :inactive
37
- else
38
- Whois.bug!(ParserError, "Unknown status `#{$1}'.")
39
- end
40
- else
41
- :available
42
- end
43
- end
44
-
45
- property_supported :available? do
46
- !!(content_for_scanner =~ /No match for "(.+?)"/)
47
- end
48
-
49
- property_supported :registered? do
50
- !available?
51
- end
52
-
53
-
54
- property_supported :created_on do
55
- if content_for_scanner =~ /Fecha de Creacion: (.+?)\n/
56
- Time.parse($1)
57
- end
58
- end
59
-
60
- property_supported :updated_on do
61
- if content_for_scanner =~ /Ultima Actualizacion: (.+?)\n/
62
- Time.parse($1)
63
- end
64
- end
65
-
66
- property_supported :expires_on do
67
- if content_for_scanner =~ /Fecha de Vencimiento: (.+?)\n/
68
- Time.parse($1)
69
- end
70
- end
71
-
72
- property_supported :nameservers do
73
- if content_for_scanner =~ /Servidor\(es\) de Nombres de Dominio:\n\n((.+\n)+)\n/
74
- $1.scan(/-\s(.*?)\n/).flatten.map do |name|
75
- Record::Nameserver.new(:name => name)
76
- end
77
- end
78
- end
79
-
80
- # NEWPROPERTY
81
- # def suspended?
82
- # end
83
-
84
- # The following methods are implemented by Yang Li on 01/29/2013
85
- # ----------------------------------------------------------------------------
86
- property_supported :domain do
87
- return $1 if content_for_scanner =~ /Nombre de Dominio:\s+(.*)\n/i
88
- end
89
-
90
- property_not_supported :domain_id
91
-
92
- property_not_supported :registrar
93
-
94
- property_supported :admin_contacts do
95
- build_contact("Contacto Administrativo", Whois::Record::Contact::TYPE_ADMIN)
96
- end
97
-
98
- property_supported :registrant_contacts do
99
- build_contact("Titular", Whois::Record::Contact::TYPE_REGISTRANT)
100
- end
101
-
102
- property_supported :technical_contacts do
103
- build_contact("Contacto Tecnico", Whois::Record::Contact::TYPE_TECHNICAL)
104
- end
105
-
106
- property_supported :billing_contacts do
107
- build_contact("Contacto de Cobranza", Whois::Record::Contact::TYPE_BILLING)
108
- end
109
-
110
- private
111
-
112
- def build_contact(element, type)
113
- reg=Record::Contact.new(:type => type)
114
- if content_for_scanner =~ /#{element}:\s*\n((.+\n)+)\n/i
115
- line_num=1
116
- $1.split(%r{\n}).each do |line|
117
- titles=line.strip if line_num==1
118
- reg["name"]=line.strip.split(%r{\t+}).first if line_num==1
119
- reg["email"]=line.strip.split(%r{\t+}).last if line_num==1
120
- reg["organization"]=line.strip if line_num==2
121
- reg["address"]=line.strip if line_num==3
122
- reg["city"]=line.strip if line_num==4
123
- reg["phone"]=line.strip.split(%r{\s+}).first if line_num==5
124
- reg["fax"]=line.split(%r{\s+}).last if line_num==5
125
- line_num=line_num+1
126
- end
127
- end
128
- return reg
129
- end
130
- # ----------------------------------------------------------------------------
131
-
132
- end
133
- end
134
- end
135
- end
@@ -1,127 +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.norid.no parser
19
- #
20
- # Parser for the whois.norid.no 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 WhoisNoridNo < 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 =~ /% no matches/)
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 =~ /Created:\s+(.*)\n/
49
- Time.parse($1)
50
- end
51
- end
52
-
53
- property_supported :updated_on do
54
- if content_for_scanner =~ /Last updated:\s+(.*)\n/
55
- Time.parse($1)
56
- end
57
- end
58
-
59
- property_not_supported :expires_on
60
-
61
- # The following methods are implemented by Yang Li on 02/12/2013
62
- # ----------------------------------------------------------------------------
63
- property_supported :domain do
64
- return $1 if content_for_scanner =~ /Domain Name\.+:\s+(.*)\n/i
65
- end
66
-
67
- property_not_supported :domain_id
68
-
69
- property_supported :registrar do
70
- reg=Record::Registrar.new
71
- reg["id"] = node("Registrar Handle")
72
- return reg
73
- end
74
-
75
- property_supported :registrant_contacts do
76
- build_contact("Domain Holder Handle", Whois::Record::Contact::TYPE_REGISTRANT)
77
- end
78
-
79
- property_supported :admin_contacts do
80
- build_contact("Legal\-c Handle", Whois::Record::Contact::TYPE_ADMIN)
81
- end
82
-
83
- property_supported :technical_contacts do
84
- build_contact("Tech\-c Handle", Whois::Record::Contact::TYPE_TECHNICAL)
85
- end
86
-
87
- property_supported :nameservers do
88
- content_for_scanner.scan(/Name Server Handle\.+:\s+(.+)\n/).flatten.map do |name|
89
- Record::Nameserver.new(:name => name + " - handle reference online at http://www.norid.no/domenenavnbaser/whois/kopirett.html")
90
- end
91
- end
92
-
93
- property_not_supported :billing_contacts
94
-
95
- private
96
-
97
- def build_contact(element, type)
98
- reg=Record::Contact.new(:type => type)
99
- reg["id"]=node(element)
100
- content_for_scanner.scan(/((.+\n)+)\n/).each do |x|
101
- str=x.flatten.join
102
- if str.include?(node(element))
103
- str.scan(/^(.+?)\.+:\s+(.+)\n/).map do |entry|
104
- reg["name"]=entry[1] if entry[0] =~ /Name$/
105
- reg["address"]=entry[1] if entry[0]=~ /Post Address/i
106
- reg["city"]= entry[1] if entry[0]=~ /Postal Area/i
107
- reg["zip"]=entry[1] if entry[0]=~ /Postal Code/i
108
- reg["state"]=entry[1] if entry[0]=~ /#{element}\sState\/Province/i
109
- reg["country_code"]=entry[1] if entry[0]=~ /Country/i
110
- reg["phone"]=entry[1] if entry[0]=~ /Phone Number/i
111
- reg["fax"]=entry[1] if entry[0]=~ /Fax Number/i
112
- reg["email"]=entry[1] if entry[0]=~ /Email/i
113
- end
114
- end
115
- end
116
- return reg
117
- end
118
-
119
- def node(element)
120
- return $1 if content_for_scanner =~ /^#{element}\.+:\s*(.+)\n/
121
- end
122
- # ----------------------------------------------------------------------------
123
-
124
- end
125
- end
126
- end
127
- end
@@ -1,118 +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
- #
16
- # = whois.pandi.or.id parser
17
- #
18
- # Parser for the whois.pandi.or.id server.
19
- #
20
- # NOTE: This parser is just a stub and provides only a few basic methods
21
- # to check for domain availability and get domain status.
22
- # Please consider to contribute implementing missing methods.
23
- # See WhoisNicIt parser for an explanation of all available methods
24
- # and examples.
25
- #
26
- class WhoisPandiOrId < Base
27
-
28
- property_supported :status do
29
- if content_for_scanner =~ /domain-status:\s+(.+)\n/
30
- case $1.downcase
31
- when "object is active"
32
- :registered
33
- else
34
- Whois.bug!(ParserError, "Unknown status `#{$1}'.")
35
- end
36
- else
37
- :available
38
- end
39
- end
40
-
41
- property_supported :available? do
42
- !!(content_for_scanner =~ /^Not found/)
43
- end
44
-
45
- property_supported :registered? do
46
- !available?
47
- end
48
-
49
- property_supported :created_on do
50
- if content_for_scanner =~ /Creation Date:\s+(.+)\n/
51
- Time.parse($1)
52
- end
53
- end
54
-
55
- property_supported :updated_on do
56
- if content_for_scanner =~ /Last Updated On:\s+(.+)\n/
57
- Time.parse($1)
58
- end
59
- end
60
-
61
- property_supported :expires_on do
62
- if content_for_scanner =~ /Expiration Date:\s+(.+)\n/
63
- Time.parse($1)
64
- end
65
- end
66
-
67
- property_supported :nameservers do
68
- content_for_scanner.scan(/^Name Server:\s+(.+)\n/).flatten.map do |name|
69
- Record::Nameserver.new(:name => name)
70
- end
71
- end
72
-
73
- property_supported :domain do
74
- return $1 if content_for_scanner =~ /Domain Name:\s+(.*)\n/i
75
- end
76
-
77
- property_not_supported :domain_id
78
-
79
- property_supported :registrar do
80
- reg=Record::Registrar.new
81
- content_for_scanner.scan(/^(.*Registrar.*):\s+(.+)\n/).map do |entry|
82
- reg["name"] = entry[1] if entry[0] =~ /Sponsoring/i
83
- reg["organization"] = entry[1] if entry[0] =~ /Sponsoring/i
84
- end
85
- return reg
86
- end
87
-
88
- property_supported :registrant_contacts do
89
- build_contact("Registrant", Whois::Record::Contact::TYPE_REGISTRANT)
90
- end
91
-
92
- property_supported :admin_contacts do
93
- build_contact("Admin Contact", Whois::Record::Contact::TYPE_ADMIN)
94
- end
95
-
96
- property_supported :technical_contacts do
97
- build_contact("Tech Contact", Whois::Record::Contact::TYPE_TECHNICAL)
98
- end
99
-
100
- property_supported :billing_contacts do
101
- build_contact("Billing Contact", Whois::Record::Contact::TYPE_BILLING)
102
- end
103
-
104
- private
105
-
106
- def build_contact(element, type)
107
- reg=Record::Contact.new(:type => type)
108
- content_for_scanner.scan(/^(#{element}.*):\s+(.+)\n/).map do |entry|
109
- reg["id"]=entry[1] if entry[0] =~ /ID/
110
- end
111
- return reg
112
- end
113
-
114
- end
115
-
116
- end
117
- end
118
- end