【问题标题】:ImportError when deploy web app on cloud platform, MS Azure在云平台 MS Azure 上部署 Web 应用程序时出现 ImportError
【发布时间】:2016-08-24 20:06:45
【问题描述】:

我有一个使用 Django 用 Python 编写的网络应用程序。在我的计算机(本地主机)中一切正常。但是当我将它部署到 Azure 时,我担心的事情确实发生了,那就是在云中找不到库。
这就是它所显示的:
/
处的导入错误 没有名为 cv2 的模块
Python 路径:[u'D:\home\site\wwwroot\env\Lib\site-packages', '.', 'D:\Windows\SYSTEM32\python27.zip',
在导入 opencv 包之前,一切都在云端运行良好。云编译器似乎没有 openCV 包。有什么方法可以手动添加包吗?

【问题讨论】:

  • 嗨,还有更新吗?
  • 您好,很抱歉这么晚才发表评论。我按照你的建议做了。这是我得到的错误。 Module use of python27.dll conflicts with this version of Python. 显然python版本还在3.4。我曾经通过更改 runtime.txt 将版本从 2.7 更改为 3.4。然而,奇怪的是现在我把它改回 2.7,似乎服务器端没有做任何改变。 Web 应用配置中的应用程序设置也不起作用。
  • 你可以尝试在本地新建一个2.7版本的虚拟环境,然后按照我的建议尝试完成申请。毕竟,您将它们部署到 Azure。

标签: python django opencv azure


【解决方案1】:

根据http://opencv-python-tutroals.readthedocs.io/en/latest/py_tutorials/py_setup/py_setup_in_windows/py_setup_in_windows.html的安装说明,安装opencv lib主要有2个步骤,安装numpy lib和复制cv2.pyd文件到你的目录。

您可以尝试按照以下步骤将 opencv 包添加到您的 Azure Web Apps 应用程序。

  1. 关注https://azure.microsoft.com/en-us/documentation/articles/web-sites-python-create-deploy-flask-app/#web-app-development---windows---command-line,通过 git 将您的应用程序下载到本地,然后将numpy 包添加到您的应用程序中,将所有依赖项生成到requirements.txt 文件中。
  2. https://sourceforge.net/projects/opencvlibrary/?source=typ_redirect下载最新的openCV版本并双击解压。
  3. 转到opencv/build/python/2.7 文件夹,将X86 版本的cv2.pyd 复制到本地存储库路径。例如,您可以在根目录中创建一个名为 libs 的 lib 文件夹,因为这些包无法在 Azure 上直接编译。并将x86版本的cv2.pyd文件复制到这个文件夹中。
  4. 使用 git 将应用程序部署到 Azure。
  5. 在脚本中添加你都使用cv2包的lib路径:

    import sys
    sitepackage = "D:\home\site\wwwroot\libs"
    sys.path.append(sitepackage)
    

如有任何疑问,请随时告诉我。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-04-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多