如何用Python读取URL中的kddcup.names文件?报错文件未找到
解决方案:读取远程URL文件的正确方法
你遇到的问题是因为Python内置的open()函数仅支持读取本地文件系统中的文件,无法直接通过HTTP URL读取远程服务器上的文件,所以会抛出“文件未找到”错误。以下是两种可行的解决方法:
方法一:使用requests库读取
requests是Python处理HTTP请求的常用库,能轻松获取远程文件内容:
- 先安装
requests(如果未安装):
pip install requests
- 修改代码如下:
# 导入所需库 import requests import pandas as pd import numpy as np import matplotlib.pyplot as plt import seaborn as sns import time # 读取远程文件内容 url = "http://kdd.ics.uci.edu/databases/kddcup99/kddcup.names" response = requests.get(url) # 确保请求成功 if response.status_code == 200: print(response.text) else: print(f"请求失败,状态码:{response.status_code}")
方法二:使用pandas直接读取
既然你已经导入了pandas,可以用它直接读取远程文本文件:
import pandas as pd import numpy as np import matplotlib.pyplot as plt import seaborn as sns import time # 读取远程文件 url = "http://kdd.ics.uci.edu/databases/kddcup99/kddcup.names" # 因为kddcup.names是每行一个特征的文本,用read_table指定分隔符为换行 df = pd.read_table(url, sep="\n", header=None) print(df)
内容的提问来源于stack exchange,提问作者Adejuwon Boboye
相关产品推荐
相关产品推荐

