Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
HDFS:使用Python3从HDFS读取数据以解析HDFS中的XML文件_Python_Hadoop_Hdfs_Snakebite - Fatal编程技术网

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

HDFS:使用Python3从HDFS读取数据以解析HDFS中的XML文件,python,hadoop,hdfs,snakebite,Python,Hadoop,Hdfs,Snakebite,我有大约1500个HDFS格式的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 h

我有大约1500个HDFS格式的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
回溯(最近一次呼叫最后一次):
文件“/home/ubuntu/PycharmProjects/textmining/read_data_from_HDFS.py”,第5行,在
从snakebite.client导入客户端
文件“/usr/local/lib/python3.6/dist-packages/snakebite/client.py”,第1473行

baseTime=min(时间*)(1L我是在同一个问题上遇到的。 蛇咬伤与Python3不兼容。您可以将其与Python2一起使用

pip install snakebite-py3 
这将帮助你解决这个问题