【问题标题】:Python on anaconda cannot find azure.mgmt.datafactoryanaconda 上的 Python 找不到 azure.mgmt.datafactory
【发布时间】:2018-01-30 15:34:03
【问题描述】:

我正在尝试运行本教程

https://docs.microsoft.com/en-US/azure/data-factory/quickstart-create-data-factory-python

但我无法安装软件包。我尝试了几次安装,但在尝试运行 from azure.mgmt.datafactory import DataFactoryManagementClient 时一直收到错误 No module named 'azure.mgmt.datafactory'

我正在使用 anaconda 和 windows 10。

我尝试在 python 3.5 环境下运行推荐的 anaconda 包 https://anaconda.org/anaconda/azurehttps://anaconda.org/clinicalgraphics/azure-mgmt-resource,我还尝试使用

从 github (https://github.com/Azure/azure-sdk-for-python) 手动安装所有内容
git clone git://github.com/Azure/azure-sdk-for-python.git 
cd azure-sdk-for-python 
python setup.py install

在普通(Python 3.6)和新(Python 3.5,使用Anaconda version with Python 3.5)环境中。这些都不起作用。

我错过了什么?

(请注意,from azure.mgmt.resource import ResourceManagementClient 在安装 anaconda 时运行良好)

编辑

在第一次响应之后,我从 powershell 运行了以下命令

 pip install azure-mgmt-resource
 pip install azure-mgmt-datafactory
 pip install azure-mgmt

导致ModuleNotFoundError: No module named 'azure.mgmt'

卸载这三个包并作为第一个安装 azure-mgmt 也没有解决问题。但是,我不知道如何从python setup.py install 卸载手动安装的包,这仍然可能是个问题。

【问题讨论】:

    标签: python azure anaconda azure-data-factory


    【解决方案1】:

    你试过在 powershell/cmd 中安装 pip 吗?

    pip install azure-mgmt-datafactory
    

    更新(简的回答):

    pip freeze > requirements.txt
    pip uninstall -r requirements.txt
    python -m pip install azure-common
    python -m pip install azure-mgmt
    python -m pip install azure-mgmt-datafactory (this might not be needed as it comes with azure-mgmt)
    

    【讨论】:

    • 我似乎记得有一次 pip 在 anaconda 中不起作用。安装成功,但现在显示No module named 'azure.mgmt' - 我会尝试卸载所有内容并再试一次。
    • 对不起,卸载所有东西(尽可能好)并在 powershell 下运行 pip 命令(也是pip install azure-mgmt-resource)导致同样的错误。没有名为azure.mgmt的模块
    • 似乎是一个不同的问题,您是否安装了多个 python 解释器?检查一下:stackoverflow.com/questions/32680081/… 你可能想要 python -m pip install 将它安装在默认解释器中运行 this which -a python 看看你有多少,第一个应该是从电源外壳。
    • 只是为了在同一页面上,您 pip 卸载了 azure-mgmt-datafactory 和 azure-mgmt 并且 pip 再次安装了 azure-mgmt 吗?只需按照推荐的pypi.python.org/pypi/azure-mgmt 执行 pip install azure-mgmt 而不是 azure-mgmt-resource
    • 好的,我得到了azure.mgmt.datafacory 的短暂工作,但后来再也找不到azure.common.credentials。现在,在卸载并重新安装azure.mgmt.datafactory 后,azure.common.credentials 返回但现在数据工厂又丢失了。
    【解决方案2】:

    好的,这就是我让所需的 azure 库工作的方式(感谢 Saul Cruy,他给了我这个想法)

    使用这篇文章 What is the easiest way to remove all packages installed by pip?,我在 PowerShell 中创建了一个需求文件

    pip freeze > requirements.txt
    

    在这个文件中,我手动只保留了带有 azure 的条目。 然后,我删除了文件中的所有包

    pip uninstall -r requirements.txt
    

    上述步骤重复了两次,因为第一次删除时,一些天蓝色的包幸免于难。

    然后,我运行(全部在 PowerShell 中,按此顺序)

    python -m pip install azure-common
    python -m pip install azure-mgmt
    python -m pip install azure-mgmt-datafactory
    

    原因可能(!)是使用 conda 命令在 anaconda 控制台中安装包会导致依赖项混淆(我在 conda 环境中尝试了类似的方法,因为分离 azure 包似乎是个好主意从其他的,但没有成功)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-03-06
      • 2017-11-18
      • 2018-05-04
      • 2018-05-09
      • 2014-11-10
      • 2018-09-11
      • 2020-07-28
      • 1970-01-01
      相关资源
      最近更新 更多