我已经用这个教程安装了hadoop ,用这个安装了hbase,用这个安装hbase.thrift
了
现在我有一个给定的 python 脚本,用于创建一些 hbase 表。当我运行 py 文件时,它给了我错误:
Traceback (most recent call last):
File "./createTables.py", line 9, in <module>
from hbase import Hbase
ImportError: No module named hbase
这个问题似乎有同样的麻烦:How can I import hbase in python?
我尝试了那里给出的解决方案。我跑了
thrift --gen py Hbase.thrift
在/usr/lib/hbase-0.94.2/src/main/resources/org/apache/hadoop/hbase/thrift
文件夹中,它所在的Hbase.thrift
位置。Ot 创建了子文件夹gen-py
,如上述类似问题中链接的教程中所述。
现在,如果我得到“只需执行该命令并将其复制到您的默认模块文件夹(或在您运行程序的文件夹中,它应该可以工作)。” 作为给定解决方案的一部分,我转到给定 py 文件所在的文件夹(例如/home/kumo/Downloads/createTables.py
)并运行
thrift --gen py /usr/lib/hbase-0.94.2/src/main/resources/org/apache/hadoop/hbase/thrift/Hbase.thrift
...?但没有任何事情发生。将 Hbase.thrift 文件复制到 py 文件旁边的 Downloads 文件夹中,仅给出
[FAILURE:arguments:1] Could not open input file with realpath: ./Hbase.thrift
所以显然也没有帮助。
我也尝试添加
import sys
sys.path.append('/usr/lib/hbase-0.94.2/src/main/resources/org/apache/hadoop/hbase/thrift/gen-py')
再次给出相同的初始缺失模块错误。
我还尝试添加 5.c。通过在 .bashrc 中添加 python 路径来完成节俭教程的步骤:
export PYTHONPATH=$PYTHONPATH:/usr/lib/hbase-0.94.2/src/main/resources/org/apache/hadoop/hbase/thrift/gen-py
并没有真正起作用。
我对 path 感到厌烦/usr/local/hadoop/src/contrib/thriftfs/gen-py
,因为那是另一个以某种方式弹出的 gen-py 文件夹,既作为 sys 导入又作为 pythonpath 导出,但它仍然给我同样的错误。
我对这一切还是新手,所以我只是一步一步地按照教程。我不知道我可能错过了什么或不在教程中。
谢谢你的帮助!