Je souhaite extraire trois parties d'un nom d'hôte: domaine, sous-domaine, domaine de premier niveau (Pour la configuration du domaine, nous recommandons l'explication de GoDaddy Youtube)
Par exemple, avec le nom d'hôte suivant www.facebook.com
Sous-domaine: (www) Cela ne veut rien dire, je vais donc l'omettre. Domain:facebook Top Level Domain:com
Cependant, je voudrais penser à quelque chose comme co.jp, qui est courant au Japon (mais pas exactement), ici avec ** set TLD **. Par exemple, news.yahoo.co.jp
Subdomain:news Domain:yahoo Top Level Domain:co.jp
Je veux le résultat.
À propos, à part le Japon, il existe des pays qui utilisent ce type de formule co.xx.
Some of the countries using .co as a second-level domain include India (.in), Indonesia (.id), Israel (.il), the United Kingdom (.uk), South Africa (.za), Costa Rica (.cr), New Zealand (.nz), Japan (.jp), South Korea (.kr) and Cook Islands (.ck).
ref: wikipedia
import re
p_tld = re.compile(r"\.(?P<tld>(?:\w{2}\.)?\w{2,5})$")
test =[
"amazon.co.jp",
"amazon.com",
"news.yahoo.co.jp",
"news.yahoo.jp",
"news.yahoo.com",
"google.jp",
"google.co.jp",
"google.com",
"www.microsoft.com"
]
for t in test:
print(t)
#Perdre www
t = re.sub(r"^www\.", "", t)
#Trouvez la partie TLD
m = p_tld.search(t)
if(m != None):
print("tld:", m.group("tld"))
#Couper la partie TLD
t = p_tld.sub("",t)
#La partie restante. S'il s'agit d'un sous-domaine, imprimez. Sinon, n'imprimez que le domaine
subdomain = t.split('.')
if(len(subdomain) > 1):
print("subdomain:", subdomain[0])
print("domain:", subdomain[1])
else:
print("domain:", subdomain[0])
print("--------")
amazon.co.jp
tld: co.jp
domain: amazon
--------
amazon.com
tld: com
domain: amazon
--------
news.yahoo.co.jp
tld: co.jp
subdomain: news
domain: yahoo
--------
news.yahoo.jp
tld: jp
subdomain: news
domain: yahoo
--------
news.yahoo.com
tld: com
subdomain: news
domain: yahoo
--------
google.jp
tld: jp
domain: google
--------
google.co.jp
tld: co.jp
domain: google
--------
google.com
tld: com
domain: google
--------
www.microsoft.com
tld: com
domain: microsoft
--------
Recommended Posts