我對我的應用程序使用virtualenv,並且在我的項目文件夾下的終端中使用env/bin/pip install <lib name>
安裝了gdata,jira和gspread。我正在關注Google API的文檔,但它不起作用?從gdata導入模塊時出錯
在本文檔中,爲了做錯誤處理,你需要做的: from gdata import errors
而且爲了創建驅動器API服務的一個實例(爲了以後上創建文件),你需要這樣做: from gdata.discovery import build
但是,文件是不同的,沒有「發現」或「錯誤」,當我運行env/bin/python run.py
我得到這個錯誤:
Traceback (most recent call last):
File "run.py", line 3, in <module>
from gdata import errors
ImportError: cannot import name errors
(與發現相同)
我以爲他們的意思可能是from apiclient import errors
字面上的文檔,所以我嘗試pip安裝apiclient並用apiclient替換gdata,但它仍然無法正常工作。
我下載了gdata.zip文件並將其解壓縮並查看示例代碼(特別是對於電子表格,因爲這是我正在創建的),它們採用與文檔非常不同的方法,我非常困惑。我的目標是使用他們的API從代碼創建電子表格,但我不打算使用他們的API編輯電子表格本身,我打算使用gspread(Github)。
我已經做了大量的研究,並且我被引導到很多不同的地方,我可能會混淆代碼?有誰知道我做錯了什麼/有修復?預先感謝。
我看到一個類似的帖子,他們的實際文件是gdata.py,但我認爲我很清楚,因爲我從來沒有製作過這樣的文件,但我也不知道如何檢查(謝謝你給我看! )而且有可能出錯了?我只是運行該代碼,我得到'/home/dj/DailyReport/env/local/lib/python2.7/site-packages/gdata/__ init __。pyc',但我不確定這意味着什麼。我應該刪除該文件嗎? (我可能應該提到,由於某種原因,我有每個文件2,一個是.py和另一個.pyc,但我不知道爲什麼或什麼是) – davzaman
.pyc文件只是一個優化:當解釋器會導入一個模塊,它會檢查.py和.pyc文件。如果它只找到一個.py,或者如果.py比.pyc新,它將嘗試創建一個新的.pyc文件,它是編譯後的模塊。 在這種情況下,它確實看起來好像您正在導入gdata模塊,就像虛擬環境中的「pip」一樣安裝,所以看起來我的猜測可能是錯誤的,對不起。 – holdenweb
哦,好的!謝謝你解釋。是的,這有點奇怪。我認爲他們的文件是舊的?我發現了一種不同的方式來做到這一點,它現在工作。爲了創建電子表格,我使用gdata.docs.client代替發現。我認爲他們文檔的某些部分與新的gdata沒有更新。無論哪種方式,我感謝您的幫助!再次感謝。 – davzaman