HDFS:使用Python3从HDFS读取数据以解析HDFS中的XML文件

时间:2018-12-03 19:29:17

标签: python hadoop hdfs snakebite

我在HDFS中大约有1500个XML文件,每个文件大约2-3Gb。我需要编写一个python脚本来解析XML文件以执行MapReduce。但是,我在使用python访问HDFS中的文件时遇到了问题。

我尝试了以下脚本,并收到错误消息。

from snakebite.client import Client
def connection():
hadoop_client = Client('HDFS_hostname', 'HDFS_port', use_trash=False)
for x in hadoop_client.ls(['/']):
    print(x)

以下是错误:

Traceback (most recent call last):
  File "/home/ubuntu/PycharmProjects/textmining/read_data_from_HDFS.py", line 5, in <module>
    from snakebite.client import Client
  File "/usr/local/lib/python3.6/dist-packages/snakebite/client.py", line 1473
    baseTime = min(time * (1L << retries), cap);
                            ^
SyntaxError: invalid syntax

使用python从HDFS访问文件的最佳推荐方法是什么?

2 个答案:

答案 0 :(得分:1)

pip install snakebite-py3 

这将帮助您解决该问题...

答案 1 :(得分:-1)

我来了acroos,遇到了同样的问题。 snakebite与python 3.x不兼容,您可以在python 2中使用它。