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

相关推荐
无心水19 分钟前
【Python实战进阶】4、Python字典与集合深度解析
开发语言·人工智能·python·python字典·python集合·python实战进阶·python工业化实战进阶
上班职业摸鱼人21 分钟前
python文件中导入另外一个模块这个模块
python
永远是夏天23 分钟前
Python面向对象编程(OOP)全教程:从入门到实战(附案例)
python
动感小麦兜34 分钟前
服务器搭建
linux·服务器·python
Pocker_Spades_A1 小时前
在家写的代码,办公室接着改?Jupyter通过cpolar实现远程访问这么玩
ide·python·jupyter
m5655bj2 小时前
使用 Python 高效复制 Excel 行、列、单元格
开发语言·python·excel
龙言龙论2 小时前
身份证信息批量处理系统:从入门到实战(附exe工具+核心源码)
数据库·python
m0_626535202 小时前
代码分析 长音频分割为短音频
javascript·python·音视频
Wpa.wk2 小时前
自动化测试环境配置-java+python
java·开发语言·python·测试工具·自动化
带刺的坐椅2 小时前
AI 应用工作流:LangGraph 和 Solon AI Flow,我该选谁?
java·python·ai·solon·flow·langgraph