从Jupyter PySpark笔记本中的git克隆导入python模块

时间:2019-11-19 10:10:24

标签: python git pyspark jupyter-notebook jupyter

我正在尝试使用Azure的HDInsight上的Jupyter Pyspark笔记本从git存储库克隆并导入python模块。

在第一个笔记本单元中,我成功克隆了git repo:

%%sh 
mkdir ~/code
cd ~/code
git clone https://path-to-my-repo/MyRepo

在下一个单元格中,我尝试导入模块:

import sys
sys.path.append('~/code/MyRepo')
import mymodule

此操作失败,并显示以下信息:

ImportError: No module named mymodule

在进一步的os.system('ls ...')调查中,似乎python单元在自己的环境中运行,并且%% sh单元中创建的文件无法被python单元访问。

我正在寻找一种方法来克服这一点,并从python细胞访问我的git克隆。

2 个答案:

答案 0 :(得分:0)

我找到了一种解决方法,可以通过在subpython.check_output中运行shell命令,从python单元内克隆存储库来解决此问题:

import subprocess
import sys
#GIT clone
subprocess.check_output('mkdir ~/code ; ~/code ; cd ~/code & git clone https://path-to-my-repo/MyRepo')
sys.path.append('~/code/MyRepo')
import mymodule

答案 1 :(得分:-1)

尝试:

import sys
sys.path.append('~/code')
from MyRepo import mymodule

还要检查名称是否区分大小写