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

Windows 10下PySpark读取其他磁盘数据报错的解决方法问询

解决PySpark读取其他磁盘(Windows)文件的路径问题

直接说解决方案,别绕:

正确的路径写法(Windows环境)

PySpark读取本地磁盘文件时,Windows下的路径有几种靠谱的写法:

  • 用正斜杠替代反斜杠:避免Python字符串的转义问题,比如:
    df = spark.read.csv("D:/data/your_compressed_data.csv.gz")
    
  • 用原始字符串:如果习惯用反斜杠,在路径前加r,让Python不解析转义字符:
    df = spark.read.csv(r"D:\data\your_compressed_data.csv.gz")
    
  • 完整的file协议路径:注意是三个斜杠(file:///),后面跟盘符+路径,比如:
    df = spark.read.csv("file:///D:/data/your_compressed_data.csv.gz")
    

针对压缩包的补充说明

你提到是1.75GB的CSV压缩包,Spark支持直接读取常见压缩格式(gzip、bzip2、snappy等),不需要提前解压。如果是zip格式,需要确保zip包里只有单个CSV文件,或者用wholetext选项读取后再处理。

常见坑排查

  • 路径空格问题:如果路径里有空格,比如D:\data folder\data.csv,要么用原始字符串r"D:\data folder\data.csv",要么把路径里的空格转成%20(file协议写法):file:///D:/data%20folder/data.csv
  • 权限问题:确保运行PySpark的进程有D盘目标文件夹的读取权限,比如右键用管理员身份运行你的Python脚本/IDE
  • 拼写错误:仔细检查路径里的文件夹名、文件名,包括大小写(Windows虽然不区分大小写,但Spark有时候会严格匹配)

示例完整代码

from pyspark.sql import SparkSession

# 初始化SparkSession
spark = SparkSession.builder.appName("ReadD盘数据").getOrCreate()

# 读取D盘的压缩CSV
df = spark.read.csv(
    "D:/data/harvard_dataverse_compressed.csv.gz",
    header=True,  # 如果CSV有表头的话打开
    inferSchema=True  # 自动推断字段类型,大数据量可以关闭手动指定schema提升速度
)

# 测试读取成功
df.show(5)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 05:50:25