Pyspark:hdfs 中没有这样的文件或目录

Pyspark: No such file or directory in hdfs

我正在尝试使用 pyspark 解析 xml 文件。我的文件存在于 HDFS 中。我在下面写了我的代码,但是当我执行它时,它无法识别位置。请帮忙-下面是我的代码

代码:

import xml.etree.ElementTree as ET
filenme = sc.wholeTextFiles("/user/root/CDs")
def add_hrk(file):
   tree = ET.parse(file)
   doc = tree.getroot()
filenme.map(lambda(filename, content): filename).foreach(add_hrk)

错误:

IOError: [Errno 2] No such file or directory: u'hdfs://xxxx/user/root/CDs/Parsed_CD.xml'

我想提一下我正在使用 wholeTextFiles 因为在函数 ET.parse 中我必须提到路径我目前正在尝试处理的文件。请提出建议,因为我没有找到任何解决方案。我已经检查过该文件存在于 hdfs 中,但它抛出该错误。

ElementTree 库希望文件在本地文件系统上可用。这就是为什么你应该使用 fromstring,例如:

import xml.etree.ElementTree as ET
filenme = sc.wholeTextFiles("/user/root/CDs")
def add_hrk(content):
   tree = ET.fromstring(content)
   doc = tree.getroot()

filenme.map(lambda(filename, content): content).foreach(add_hrk)