基于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

相关推荐
我什么都学不会8 分钟前
Python练习作业3
开发语言·python
板面华仔16 分钟前
机器学习入门(二)——逻辑回归 (Logistic Regression)
python·机器学习
Hgfdsaqwr17 分钟前
使用Flask快速搭建轻量级Web应用
jvm·数据库·python
GHZhao_GIS_RS26 分钟前
python中的sort和sorted用法汇总
python·排序·列表
永恒的溪流31 分钟前
环境出问题,再修改
pytorch·python·深度学习
ruxshui31 分钟前
Python多线程环境下连接对象的线程安全管理规范
开发语言·数据库·python·sql
大模型玩家七七37 分钟前
向量数据库实战:从“看起来能用”到“真的能用”,中间隔着一堆坑
数据库·人工智能·python·深度学习·ai·oracle
2301_7634724642 分钟前
使用PyQt5创建现代化的桌面应用程序
jvm·数据库·python
爱学习的阿磊43 分钟前
Web开发与API
jvm·数据库·python
qq_192779871 小时前
Python多线程与多进程:如何选择?(GIL全局解释器锁详解)
jvm·数据库·python