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

Python socket模块批量解析域名时,如何跳过无效URL继续执行?

解决Python DNS解析时跳过无效URL的问题

当遇到无效域名时,socket.gethostbyname()和socket.getfqdn()会抛出socket.gaierror异常,导致程序中断。要跳过这类无效条目继续处理后续内容,只需在循环中加入异常捕获机制即可。

修改后的代码示例:

import socket

domain_list = ["www.google.com", "www.biiiiinnnnggggg.com", "www.microsoft.com"]
for domain in domain_list:
    try:
        # 尝试解析IP和FQDN
        ip = socket.gethostbyname(domain)
        fqdn = socket.getfqdn(domain)
        print(f"域名: {domain}")
        print(f"IP地址: {ip}")
        print(f"完全限定域名: {fqdn}\n")
    except socket.gaierror:
        # 捕获解析失败的异常,跳过当前无效域名
        print(f"无效域名,跳过: {domain}\n")

关键说明

  • 使用try-except包裹解析逻辑,捕获socket.gaierror异常(这是DNS解析失败时抛出的特定异常)
  • 在except块中可以根据需求记录错误信息,或者直接静默跳过
  • 异常处理后,循环会自动继续处理列表中的下一个条目

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 04:15:18