python-whois 0.9.5
公司详情
使用python-whois这个类库时解析.biz域名发现总得不到域名过期日期,在whois.com上查询发现它是可以得到过期日期的,所以应该是python-whois的问题。
在命令行中输入以下语句,得到python-whois的路径,进去后找到__init__.py
,发现是用NICClient这个类来得到whois信息的。
python3
import whois
whois.__file__ # '/usr/local/lib/python3.13/site-packages/whois/whois.py'
我们也用这个类得到指定域名的whois信息,可以找到返回的文本里有以下内容:Registry Expiry Date: 2028-05-06T23:59:59Z
from whois import NICClient
nic_client = NICClient()
domain = 'mingding.biz'
nic_client.whois_lookup(None, domain, 0, quiet=False)
python-whois解析whois信息用的是parser.py
这个文件,找开搜“.biz”,发现它是用WhoisBz这个类来解析.biz域名。搜“WhoisBiz”,有一个regex变量,把它的这句"expiration_date": r"Registrar Registration Expiration Date: *(.+)"
改成"expiration_date": r"Registry Expiry Date: *(.+)"
再保存就可以了。
同理:
.studio
WhoisBz
"expiration_date": r"Registry Expiry Date: *(.+)"
.site
WhoisSite
"expiration_date": r"Registry Expiry Date: *(.+)"
.design
WhoisDesign
"expiration_date": r"Registry Expiry Date: *(.+)"
.ai
WhoisAi
"expiration_date": r"Registry Expiry Date: *(.+)"