2016-04-29 102 views
0

我有一個使用Django在Python中編寫的Web應用程序。我的電腦(本地主機)一切都很好。但是當我將它部署到Azure時,我所擔心的事情發生了,這是雲中沒有的庫。
這是它表明:
導入錯誤在/
無模塊命名CV2
Python的路徑:[u'D:\家\網站\ wwwroot的\ ENV \ LIB \站點包, ', 'D:\ Windows \ SYSTEM32 \ python27.zip',
在導入opencv軟件包之前,所有的東西都能在雲端正常運行。看起來雲編譯器沒有openCV包。有什麼方法可以手動添加包嗎?在雲平臺上部署Web應用程序時出現ImportError錯誤Azure

+0

嗨,還有更新嗎? –

+0

你好,很抱歉,最近這樣評論這個。我做了你的建議。這是我得到的錯誤。 'python27.dll的模塊使用與這個版本的Python衝突。「顯然,python版本仍然在3.4。我曾經通過更改** runtime.txt **將版本從2.7更改爲3.4。然而,奇怪的是現在我把它改回2.7,似乎在服務器端沒有改變。 Web應用程序配置中的應用程序設置也不起作用。 – qq52184962

+0

您可以嘗試在本地創建2.7版本的新虛擬環境,然後嘗試使用我的建議完成應用程序。畢竟,您將它們部署到Azure。 –

回答

0

根據安裝說明http://opencv-python-tutroals.readthedocs.io/en/latest/py_tutorials/py_setup/py_setup_in_windows/py_setup_in_windows.html,有兩個主要步驟安裝opencv庫,安裝numpy庫並將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通過混帳讓您的應用程序的地方,那麼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包:

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

任何進一步的問題,請隨時讓我知道。

相關問題