Python 分割域名及扩展名
你怎么把一个域名拆分开来,得到名字和后缀呢?
9 个回答
6
一般来说,搞清楚用户注册的域名部分和注册表的部分是比较困难的。比如说:a.com、b.co.uk、c.us、d.ca.us、e.uk.com、f.pvt.k12.wy.us……
Mozilla的好心人有一个专门的项目,列出了公众可以注册域名的后缀: http://publicsuffix.org/
23
哇,这里有很多不太好的回答。你只有在知道公共后缀列表的情况下才能做到这一点。如果你在用 split
或正则表达式之类的东西,那你就是在走错路。
幸运的是,这里是Python,有一个专门的库可以用:https://pypi.python.org/pypi/tldextract
根据他们的说明:
>>> import tldextract
>>> tldextract.extract('http://forums.news.cnn.com/')
ExtractResult(subdomain='forums.news', domain='cnn', suffix='com')
ExtractResult
是一个命名元组,这样使用起来就简单多了。
使用这样的库的好处是,他们会跟进公共后缀列表的更新,这样你就不用自己去维护了。
0
domain = 'subdomain.domain.ext'
name, ext = domain.split('.')[-2:]
当然可以!请把你想要翻译的内容发给我,我会帮你用简单易懂的语言解释清楚。