我問這個問題已經沒有想法了 - 我以為我在做一些愚蠢的事情,但即使我是,我也無法弄清楚是什么......我是Python的新手,10年前就遠離了編碼,但我是合理的精通一次:-D 我編寫了一個 python 腳本來查詢 google CSE 并搜索相關項目,其想法是它將檢查 Podio 材料列表以查看它們是否已在那里列出。因此,目前我想做的就是通過 Podio 進行身份驗證并獲取項目,以便我可以在我的應用程序中查詢它們。我正在嘗試使用文檔中規定的方法連接到 Podio API(以及此處的問題以及我看過的其他地方)此時,除了用實際字符串替換的憑據之外,該腳本實際上所做的所有事情都是這樣,以防萬一我錯過了一些 python 變量瘋狂。import pypodio2from pypodio2.api import OAuthClientc = OAuthClient( "<myappID>", '<myAPIkey>', '<myusername>', '<mypassword>' )我使用 pythonanywhere 作為沙箱,并且從 bash 控制臺運行腳本,我得到了這個16:26 ~/mysite $ python apitest.pyTraceback (most recent call last): File "apitest.py", line 15, in <module> 'Splat_100' File "/home/Trebuchet/.local/lib/python2.7/site-packages/pypodio2/api.py", line 13, in OAuthClient api_key, api_secret, domain) File "/home/Trebuchet/.local/lib/python2.7/site-packages/pypodio2/transport.py", line 41, in __init__ urlencode(body), headers=headers) File "/usr/local/lib/python2.7/dist-packages/httplib2/__init__.py", line 2135, in request cachekey, File "/usr/local/lib/python2.7/dist-packages/httplib2/__init__.py", line 1796, in _request conn, request_uri, method, body, headers File "/usr/local/lib/python2.7/dist-packages/httplib2/__init__.py", line 1701, in _conn_request conn.connect() File "/usr/local/lib/python2.7/dist-packages/httplib2/__init__.py", line 1358, in connect sock.connect((self.host, self.port) + sockaddr[:2]) File "/usr/local/lib/python2.7/dist-packages/httplib2/socks.py", line 496, in connect self.__negotiatehttp(destpair[0], destpair[1]) File "/usr/local/lib/python2.7/dist-packages/httplib2/socks.py", line 457, in __negotiatehttp raise HTTPError((statuscode, statusline[2]))httplib2.socks.HTTPError: (403, 'Forbidden'密碼、密鑰等正確。用戶名正確。clientID 正確。所以我一定錯過了一些對于習慣使用 API 的人來說顯而易見的東西。我不應該嗎?謝謝 :)
1 回答

婷婷同學_
TA貢獻1844條經驗 獲得超8個贊
PythonAnywhere 上的免費帳戶只能訪問我們白名單上的 http(s) 站點。如果您使用的網站有公開記錄的 API,請將其鏈接發送給 PythonAnywhere 支持 ([email protected]),我們會考慮將其添加到白名單中。
添加回答
舉報
0/150
提交
取消