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

Kaggle中pandas使用read_csv读取URL数据集报名称解析错误如何解决

问题场景

在Kaggle平台运行IBM面向数据分析师的Python课程示例代码,目标是从指定URL导入二手车数据集到Python环境,输出数据集前5行验证导入结果。
使用的初始代码如下:

import pandas as pd
import numpy as np

url = "https://archive.ics.uci.edu/ml/machine-learning-databases/autos/imports-85.data"
df = pd.read_csv(url, header = None)
Print("The First Five Rows Of Data are")
df.head(5)

多次运行均抛出异常,核心报错信息:

URLError: <urlopen error [Errno -3] Temporary failure in name resolution>

故障原因
  • 核心报错为域名解析失败:Kaggle Notebook运行环境默认限制部分外部域名的网络访问权限,无法直接解析、请求UCI机器学习仓库的域名,该问题和代码逻辑无关,是环境网络策略导致的。
  • 代码本身存在两处可导致运行异常的问题:
    • Python内置打印函数为全小写print(),大写开头的Print()会触发名称错误,即使网络连通该行也无法正常执行
    • Kaggle Notebook默认仅输出单元格最后一行的返回值,单独编写df.head(5)若不在单元格最后一行,不会自动展示结果,需要包裹在print()中才能稳定输出。
修复方法

方案1:调用Kaggle平台内置数据集(稳定性最高)

该份UCI二手车数据集已经被收录到Kaggle公开数据集库,无需发起外部网络请求即可读取,修正后可直接运行的代码如下:

import pandas as pd
import numpy as np

# 读取平台内预置的同份数据集,无需联网
df = pd.read_csv("/kaggle/input/automobile-dataset/imports-85.data", header=None)
print("The First Five Rows Of Data are")
print(df.head(5))

如果提示路径不存在,先在Notebook右侧的Add Data面板搜索Automobile Dataset,点击添加到当前工作环境后即可正常读取。

方案2:本地上传数据集

  1. 在可正常联网的本地设备下载好imports-85.data源文件
  2. 打开Kaggle Notebook,通过左侧上传入口将本地数据集上传到当前工作目录
  3. 将代码中读取路径替换为上传后的本地文件路径即可,全程不需要环境访问外部网络。
补充说明

如果是在本地Python环境、自建Jupyter环境运行这段代码,只要本地网络连通,将代码中大写的Print改为小写print,同时给df.head(5)加上print()包裹即可正常运行,不会出现域名解析类报错。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.29 14:15:32