我试图通过形成键值对来读取日志行,但出现错误。
这是我的代码:

logLine=sc.textFile("C:\TestLogs\testing.log").cache()
lines = logLine.flatMap(lambda x: x.split('\n'))
rx = "(\\S+)=(\\S+)"
line_collect = lines.collect()
for line in line_collect :
    d = dict([(x,y) for x,y in re.findall(rx,line)])
    d = str(d)
    print d


错误:


  line_collect = lines.collect()...... InvalidInputException:输入路径
  不存在:file:/ C:/ TestLogs esting.log


我不知道该如何纠正。我是python和spark的新手。

最佳答案

尝试将logLine=sc.textFile("C:\TestLogs\testing.log").cache()替换为
logLine=sc.textFile("C:\\TestLogs\\testing.log").cache()

反斜杠字符不是字符串中的'\'而是"\\"

10-06 06:17