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

相关推荐
Smart-Space7 分钟前
tkinter-TinUI-xml实战(11)文本阅读、编辑器
python·tkinter·tinui
加德霍克1 小时前
【机器学习】自定义数据集,使用scikit-learn 中K均值包 进行聚类
python·机器学习·均值算法·scikit-learn·作业
老大白菜2 小时前
Windsurf cursor vscode+cline 与Python快速开发指南
ide·vscode·python
码界筑梦坊2 小时前
基于Flask的哔哩哔哩综合指数UP榜单数据分析系统的设计与实现
后端·python·flask·毕业设计
A.sir啊2 小时前
爬虫基础(五)爬虫基本原理
网络·爬虫·python·网络协议·http·pycharm
Long_poem2 小时前
【第九天】零基础入门刷题Python-算法篇-数据结构与算法的介绍-六种常见的图论算法(持续更新)
python·算法·图论
纠结哥_Shrek9 小时前
pytorch基于GloVe实现的词嵌入
人工智能·pytorch·python
IT古董10 小时前
【漫话机器学习系列】072.异常处理(Handling Outliers)
人工智能·python·机器学习
EelBarb11 小时前
YOLO11/ultralytics:环境搭建
python·yolo·ultralytics
加德霍克12 小时前
【机器学习】自定义数据集使用scikit-learn中的包实现线性回归方法对其进行拟合
python·机器学习·线性回归·scikit-learn·作业