Python Spark wholeTextFiles使用冒号(:)作为路径的文件/文件夹名

Python Spark wholeTextFiles使用冒号(:)作为路径的文件/文件夹名,python,apache-spark,pyspark,Python,Apache Spark,Pyspark,我正在使用Spark处理大量数据(应用程序是用Python 3.4编写的),一些文件和文件夹的名称中有冒号:,例如http:(是的,这是一个文件夹名称)或文件:a_picture.jpg。最后一个错误导致以下错误: java.lang.IllegalArgumentException: java.net.URISyntaxException: Relative path in absolute URI: File:a_picture.jpg 它是使用sc.wholeTextFiles()创建的

我正在使用Spark处理大量数据(应用程序是用Python 3.4编写的),一些文件和文件夹的名称中有冒号
,例如
http:
(是的,这是一个文件夹名称)或
文件:a_picture.jpg
。最后一个错误导致以下错误:

java.lang.IllegalArgumentException: java.net.URISyntaxException: Relative path in absolute URI: File:a_picture.jpg
它是使用sc.wholeTextFiles()创建的RDD的一部分。http:one导致了类似的错误,需要某种协议

我无法控制如何创建此数据。我可以在启动Spark应用程序之前重命名所有文件/文件夹;但是,我必须运行我的应用程序,修复出现的任何错误,然后重试。。。你明白了。我想保留原来的名字


我有没有办法告诉Spark不要尝试将文件/文件夹名称转换为路径或某些协议,并按字面理解它们?

没有任何东西会使其成为有效的URI,但如果可以重命名,只需使用百分比编码来生成有效名称。所以我基本上应该将文件和文件夹名称中的每个冒号都替换为%,对吗?如果没有办法的话,我想我会这么做。不完全是这样。您可以使用来生成有效名称,但最好还是在上游修复此问题。更多信息。没有任何东西可以使它成为有效的URI,但如果可以重命名,只需使用百分比编码来生成有效名称。因此,我基本上应该将文件和文件夹名称中的每个冒号都替换为%,对吗?如果没有办法的话,我想我会这么做。不完全是这样。您可以使用来生成有效名称,但最好还是在上游修复此问题。更多关于。