2016-07-14 78 views
0

在SO上提出了類似的問題,我試圖按照他們的解決方案,但迄今沒有成功。 我已經從here下載gspread在我的項目中使用它。python「ImportError:No module named xyz」on shared hosting

  • 本地在mac + eclipse + pydev中一切正常。
  • 當我將代碼複製到我的共享託管環境(CentOS的,BlueHost的),我得到的錯誤沒有名爲gspread模塊:

    回溯(最近通話最後一個): 文件「ReadSpreadsheet.py」,8號線在 進口gspread 導入錯誤:沒有名爲模塊gspread

這裏是我的目錄結構:

src/ 
    gspread/ 
     __init__.py 
    SpreadsheetReader/ 
     __init__.py 
     ReadSpreadsheet.py (calls import gspread) 

Python版本是2.7本地和共享託管環境。在共享我在〜/ python中自己安裝了python 2.7。

我不確定它何時在pydev本地工作,爲什麼它不能在共享主機環境中工作。

由於我只在本地開發,只需使用git pull在服務器上覆制代碼,我的首選解決方案是不要爲服務器定製代碼。設置env變量等並不完美,但可以接受。

對不起,如果問題看起來類似。我一直在努力掙扎,沒有運氣。我認爲這應該是一個相當普遍的進口情況。

+0

您的Python路徑在您的本地環境和共享主機環境中如何比較? – Feneric

+0

你爲什麼不在你的共享主機上正常安裝Python?你在使用虛擬環境嗎?爲什麼你沒有正常使用pip安裝gspread?對這些問題可能有很好的答案,但似乎你通過手動操作而不是使用正確的工具來爲自己創造了很多問題。 –

+0

@ Two-BitAlchemist對於python安裝,我遵循以下步驟:https://my.bluehost.com/cgi/help/python-install,有沒有更好的方法? – apadana

回答

0

感謝評論,安裝pip,然後使用pip安裝gspread解決了這個問題。

pip install gspread 

上述命令在gspread documentation中提及。