基于tldextract提取URL里的子域名、主域名、顶级域

TLD是TopLevel Domain的缩写。‌tldextract‌ 是一个用于从URL中提取子域、主域名和顶级域(TLD)的Python库。它利用公共后缀列表(Public Suffix List)来确保即使是复杂或不常见的URL结构也能被正确解析。tldextract能够处理包括ICANN管理的公共TLD以及可选的私有域名,帮助开发者准确地分离出URL的各个部分,尤其是在处理多层子域时,避免了简单的字符串分割带来的错误‌。

安装

bash 复制代码
pip install tldextract

示例

python 复制代码
import tldextract

result = tldextract.extract("https://baijiahao.baidu.com/s?id=1821824643075404089")
print(result)
print(result.subdomain)  # 输出子域名
print(result.domain)    # 输出主域名
print(result.suffix)    # 输出顶级域

# ExtractResult(subdomain='baijiahao', domain='baidu', suffix='com', is_private=False)
# baijiahao
# baidu
# com

命令行模式

bash 复制代码
$tldextract
usage: tldextract [-h] [--version] [-j] [-u]
                  [--suffix_list_url SUFFIX_LIST_URL] [-c CACHE_DIR] [-p]
                  [--no_fallback_to_snapshot]
                  [fqdn|url ...]

$tldextract "http://www.baidu.com"
www baidu com

相关链接

https://github.com/john-kurkowski/tldextract

相关推荐
数据智能老司机35 分钟前
精通 Python 设计模式——并发与异步模式
python·设计模式·编程语言
数据智能老司机35 分钟前
精通 Python 设计模式——测试模式
python·设计模式·架构
数据智能老司机36 分钟前
精通 Python 设计模式——性能模式
python·设计模式·架构
c8i1 小时前
drf初步梳理
python·django
每日AI新事件1 小时前
python的异步函数
python
这里有鱼汤2 小时前
miniQMT下载历史行情数据太慢怎么办?一招提速10倍!
前端·python
databook11 小时前
Manim实现脉冲闪烁特效
后端·python·动效
程序设计实验室11 小时前
2025年了,在 Django 之外,Python Web 框架还能怎么选?
python
倔强青铜三13 小时前
苦练Python第46天:文件写入与上下文管理器
人工智能·python·面试
用户25191624271116 小时前
Python之语言特点
python