所以我再次谈到ruby whois的宝石,我一定会在其上工作一段时间。我一直在摆弄它,并注意到一些新闻gTLD没有实施或没有完全实施。 因此,我想了解这个Ruby whois解析器的深度,以便添加一些缺失的属性。如何添加属性到现有的解析器ruby whois
现在,我工作的。名称 TLD(解析器是 'whois.nic.name')至极具有域,注册商,registrant_contacts和tech_contacts失踪。 (其他不太有用的)
请纠正我,如果我错了,但从我了解的过程解析是从纯文本字符串中提取值得关注的关键字(如“域名”或“赞助注册商ID”),以根据输入创建属性或散列。
N.B - >解析器扩展了与通用或特定注册表相关的基础。我很确定它与适配器有关,除非是因为每个注册表都有自己的结构化whois数据的方式。 回到.name我查看了它,它似乎由Verisign操作。除此之外,.net顶级域名(解析器是'whois.verisign-grs.com')也由所述注册机构运营,所以我认为他们应该有类似的行为。多么严重的错误我犯了......
纯文本domain.name的whois
Domain Name ID: XXXXXXXXXXXX
Domain Name: XXXXXXXXXXX.NAME
Sponsoring Registrar: Network Solutions, LLC.
Sponsoring Registrar ID: 2_REGISTRAR_NAME-VRSN
Domain Status: clientTransferProhibited
Registrant ID: CONTACT_NAME-VRSN
Admin ID: CONTACT_NAME-VRSN
Tech ID: CONTACT_NAME-VRSN
Billing ID: CONTACT_NAME-VRSN
Name Server: NS1.WIX.COM
Name Server ID: 1739652_HOST_NAME-VRSN
Name Server: NS2.WIX.COM
Name Server ID: 1739653_HOST_NAME-VRSN
Created On: 2013-09-30T05:36:15Z
Expires On: 2015-09-30T05:36:15Z
Updated On: 2014-10-06T11:44:37Z
纯文本domain.net的whois
Domain Name: XXXXXXX.NET
Registry Domain ID:
Registrar WHOIS Server: whois.publicdomainregistry.com
Registrar URL: www.publicdomainregistry.com
Updated Date: 23-Jul-2014
Creation Date: 24-Apr-2009
Registrar Registration Expiration Date: 24-Apr-2016
Registrar: PDR Ltd. d/b/a PublicDomainRegistry.com
Registrar IANA ID: 303
Registrar Abuse Contact Email: [email protected]
Registrar Abuse Contact Phone: +1-2013775952
Domain Status: clientTransferProhibited
Registry Registrant ID: XXXXXXXX
Registrant Name: Domain Admin
这里是我做显示输出性能
.NAME解析域名注册
domain :
status : ["clientTransferProhibited"]
available? : false
registered? : true
created on : 2013-09-30 05:36:15 UTC
updated on : 2014-10-06 11:44:37 UTC
expires_on : 2015-09-30 05:36:15 UTC
registrar (hash) :
registrant contact (hash) :
admin contact (hash) :
technical contact (hash) :
.NET解析域名注册
domain : XXXXXXX.net
status : registered
available? : false
registered? : true
created on : 2009-04-24 00:00:00 +0000
updated on : 2014-05-24 00:00:00 +0000
expires_on : 2016-04-24 00:00:00 +0000
registrar (hash) : #<struct Whois::Record::Registrar id=nil, name="PDR LTD. D/B/A PUBLICDOMAINREGISTRY.COM", organization=nil, url="http://www.PublicDomainRegistry.com">
registrant contact (hash) :
admin contact (hash) :
technical contact (hash) :
正如人们所看到的,也有一些变化。 我想指出的一个是注册商财产纯文本响应。首先是“REGISTRAR IANA ID”,后者是“SPONSORING REGISTRAR ID”。这必须解释为什么解析器未在。名称 TLD工作以来,威瑞信基础解析器(文件base_verisign.rb)被配置成这样:
property_supported :registrar do
node("Sponsoring Registrar") do |value|
Whois::Record::Registrar.new(
id: last_useful_item(node("Sponsoring Registrar IANA ID")),
name: last_useful_item(value),
url: referral_url
)
end
end
不,我明白为什么它是“注册商IANA ID“而不是”注册商IANA ID“...
无论如何,如果有人可以通过解释我的误解来帮助我解决问题,并提供一个示例,说明如何为.name添加注册器属性顶级域名(所以我可以为其余的做),这将是太棒了!
我想知道你的代码是什么“节点”,因为我不知道。我假设它是封装了whois响应属性的struct对象的表示,但是我没有在任何地方看到它的任何信息。
无论如何,欢呼!
请花时间学习如何更好地设置问题的格式,并使用正确的语法,包括正确的大写。这对您来说似乎并不重要,但它可以帮助我们阅读您的问题,从而更容易帮助您。如果你的问题很难阅读,一些潜在的回答者会走开。此外,减少绒毛和无意义的措辞,所以问题是清晰和简洁的。 – 2014-10-09 18:23:17
简而言之,我正在研究whois-ruby宝石。解析时,会从纯文本响应中提取属性。但。并不是所有的属性都支持,我的问题在于了解它的工作原理。 – Exos 2014-10-10 07:28:05