You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Python从URL字符串中提取指定域名?

提取URL主域名的Python实现

你可以按照以下步骤实现需求,核心是用urlparse解析出域名后,再处理掉前缀并提取主域名部分:

实现步骤

  • 导入urlparse模块:from urllib.parse import urlparse
  • 编写函数时,先解析URL获取netloc字段(这就是包含www前缀的完整域名)
  • 移除www.前缀(如果存在)
  • 按.分割处理后的域名,取分割结果的第一个元素(对应你示例里的主域名)

完整代码示例

from urllib.parse import urlparse

def extract_domain(url):
    # 解析URL,获取网络位置(域名部分)
    parsed_url = urlparse(url)
    netloc = parsed_url.netloc
    
    # 处理没有netloc的情况(比如URL格式不规范)
    if not netloc:
        return None
    
    # 移除www.前缀
    if netloc.startswith('www.'):
        netloc = netloc[4:]
    
    # 分割域名,提取主部分
    parts = netloc.split('.')
    # 针对示例中的二级域名场景,取第一个部分即可
    return parts[0]

# 测试示例
test_urls = [
    "http://google.com/youtube/win",
    "http://www.foodpub.com/home",
    "https://www.games.com"
]

for url in test_urls:
    domain = extract_domain(url)
    print(f"url = \"{url}\" > domain name = \"{domain}\"")

补充说明

  • 这个函数完全匹配你给出的所有示例场景,能正确提取google、foodpub、games这类主域名
  • 如果后续需要处理更复杂的多级域名(比如blog.google.co.uk),可以额外添加顶级域名的判断逻辑,但当前示例场景下基础版本足够使用

内容的提问来源于stack exchange,提问作者ERGames

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 22:32:04