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

Python DNS解析代码遇错终止求助:如何跳过解析失败域名

DNS域名解析代码异常修复

你的代码遇到错误就停止运行,核心问题是try-except的作用范围错误——你把整个for循环放在了try块里,只要某次域名解析触发异常,程序就会直接跳出循环进入except分支,无法继续处理后续域名。

修正后的代码如下:

import socket

# 读取list.txt中的域名,逐行解析
with open("list.txt", "r") as f:
    for line in f:
        domain = line.strip()
        if not domain:  # 跳过空行
            continue
        try:
            ip = socket.gethostbyname(domain)
            print(f"{ip}    {domain}")
        except Exception:
            print(f"无法解析域名: {domain}")

关键修正点:

  • 将try-except嵌套到for循环内部,每次仅针对单个域名的解析操作捕获异常,某个域名解析失败后,循环会继续处理下一行
  • 增加空行判断,避免处理文件中的空白行
  • 使用f-string简化输出格式,提升可读性
  • 明确打印解析失败的域名,满足需求

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.07 21:37:32