【问题标题】:How to import "HdfsClient" in python 3?如何在 python 3 中导入“HdfsClient”?
【发布时间】:2019-04-03 07:01:29
【问题描述】:

我是 python 新手,我正在尝试连接 Hadoop HDFS 系统。我得到了以下参考代码,我尝试实现它,但在导入包时显示错误。

from pyarrow import HdfsClient

# Using libhdfs
hdfs = HdfsClient('192.168.0.119', '50070', 'cloudera', driver='libhdfs')

错误:ImportError:无法导入名称“HdfsClient”

我什至尝试使用“pip”安装它,但是

找不到满足HdfsClient要求的版本 (来自版本:)未找到 HdfsClient 的匹配分布

然后我尝试使用“conda”,但又一次

收集包元数据:完成解决环境:失败

PackagesNotFoundError:以下包不可用 当前频道:

  • hdfsclient

当前频道:

搜索可能提供 conda 包的替代渠道 您正在寻找,导航到

https://anaconda.org

并使用页面顶部的搜索栏。

实际上我正在尝试使用以下方式连接到 HUE:

IP 地址 -> 192.168.0.119

端口名称 -> 50070

用户名 -> cloudera

密码 -> cloudera

但它没有成功。谁能建议以更好的方式连接它或如何在 Python 3 中导入“HdfsClient”包。

【问题讨论】:

    标签: python python-3.x hadoop anaconda pyhdfs-client


    【解决方案1】:

    HDFSClient 已弃用。您可能想使用pyarrow.hdfs.connect。 也可以试试pip freeze,看看你的python环境中是否安装了相关库。 前任。

    from pyarrow import hdfs
    hdfs.connect('192.168.0.119', 50070, 'cloudera', driver='libhdfs')
    

    【讨论】:

    • 感谢@kapil,但它仍然显示错误,FileNotFoundError: [WinError 2] The system cannot find the file specified。而且我也有连接到 hadoop 的密码,并且 hdfs.connect() 方法中没有密码参数。
    • 在进行 hdfs 连接或读取文件时出现此错误。你能粘贴你的代码更清楚吗?
    • 不,我没有读取任何文件,我只是使用了您的“pyarrow”代码(您在上面提到过),只是尝试执行 hdfs 中的所有细节.connect() 方法都是一样的。
    猜你喜欢
    • 2021-04-21
    • 1970-01-01
    • 1970-01-01
    • 2018-06-12
    • 1970-01-01
    • 2020-10-15
    • 2020-05-04
    • 2019-12-11
    • 2012-09-20
    相关资源
    最近更新 更多