【问题标题】:PySpark - Path does not exist when loading local file (image)PySpark - 加载本地文件(图像)时路径不存在
【发布时间】:2021-01-04 14:37:27
【问题描述】:

我正在使用pyspark 在python 中使用spark 完成我的第一步,我面临着几个疑问和一个我在寻找可行的解决方案后无法解决的失败。到目前为止,我正在做:

import pyspark
from pyspark.context import SparkContext
from pyspark.sql.session import SparkSession
sc = SparkContext('local')
spark = SparkSession(sc)

我不完全理解上面的代码。在启动 pyspark 项目时,它是否必须始终存在? SparkContext 是否设置为 local,因为我在本地使用我的计算机而不是在云中工作?

无论如何,当我尝试加载本地文件时,在这种情况下是图像,我收到以下错误:

path = 'file:///home/guacamole/Training/sprk/myimage.jpg'
image_df = spark.read.format("image").load(path)

AnalysisException: Path does not exist: file:/home/guacamole/Training/sprk/myimage.jpg;

寻找类似的问题,我看到有人指出必须添加file:/// 以指定它是本地文件。不确定我在这里遗漏了什么或做错了什么。

【问题讨论】:

  • 您不需要指定file:///。我认为这是针对数据块的。 /home/guacamole/Training/sprk/myimage.jpg 应该没问题。

标签: python apache-spark pyspark


【解决方案1】:

您需要使用反斜杠而不是普通斜杠来编写路径, file:/// 不应该在那里,所以只需使用: path = '\\home\\guacamole\\Training\\sprk\\myimage.jpg'。 如果图像在不同的目录中,只需输入完整路径,但使用 2x 反斜杠。 (在python中“\”用于中和/删除它们后面的字符,所以如果你写一个反斜杠,整个路径将是一个随机文本,但如果你使用2个反斜杠,第一个不会显示up 作为它只是一个中和剂,而当第二个从它的功能中和它不会删除它之后的字符)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-07-23
    • 2017-09-04
    • 1970-01-01
    • 2018-12-28
    • 2019-04-08
    • 2016-10-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多