方法一:
推荐使用
from urllib.parse import urlsplit
url = "https://www.baidu.com"
host=urlsplit(url).hostname
print(host) # www.baidu.com
方法二:
import urllib
url = "https://www.baidu.com"
host = urllib.parse.urlparse(url).netloc
print(host) # www.baidu.com
方法一和方法二都是使用Python内置库urllib
方法三:
import tldextract
url = "https://www.baidu.com"
domain = tldextract.extract(url).registered_domain
print(domain) # baidu.com
方法三使用第三方类库(tldextract)可以自动识别出url中的顶级域名(TLD),包括域名和子域名在内的所有部分
方法四:
import re
url = "https://www.baidu.com"
domain = re.search("[a-zA-Z0-9]+\.[a-zA-Z0-9]+", url).group()
print(domain) # www.baidu
方法四使用正则表达式,个人不推荐使用,因为自己编写的表达式有待检验,容易出问题
参考资料