2015-04-22 134 views
4

我正在學習如何通過python-instagram包使用Instagram API。 我已經設置了客戶端,擁有客戶端ID和客戶端密碼。我已經使用get_access_token.py腳本在python-Instagram的得到一個訪問令牌,但由於某些原因,我總是收到此錯誤:Python Instagram API - API請求失敗

Traceback (most recent call last): 

    File "<ipython-input-38-6440f86cbefd>", line 1, in <module> 
    runfile('F:/PythonProjects/minefield/instagram test.py', wdir='F:/PythonProjects/minefield') 

    File "C:\Anaconda\lib\site-packages\spyderlib\widgets\externalshell\sitecustomize.py", line 580, in runfile 
    execfile(filename, namespace) 

    File "F:/PythonProjects/minefield/instagram test.py", line 13, in <module> 
    api.user_search(q='samsungmobile') 

    File "C:\Anaconda\lib\site-packages\instagram\bind.py", line 196, in _call 
    return method.execute() 

    File "C:\Anaconda\lib\site-packages\instagram\bind.py", line 182, in execute 
    include_secret=self.include_secret) 

    File "C:\Anaconda\lib\site-packages\instagram\oauth2.py", line 224, in prepare_request 
    url = self._full_url_with_params(path, params, include_secret) 

    File "C:\Anaconda\lib\site-packages\instagram\oauth2.py", line 148, in _full_url_with_params 
    self._full_query_with_params(params) + 

    File "C:\Anaconda\lib\site-packages\instagram\oauth2.py", line 144, in _full_url 
    self._signed_request(path, {}, include_signed_request, include_secret)) 

    File "C:\Anaconda\lib\site-packages\instagram\oauth2.py", line 172, in _signed_request 
    return "&sig=%s" % self._generate_sig(path, params, self.api.client_secret) 

    File "C:\Anaconda\lib\site-packages\instagram\oauth2.py", line 127, in _generate_sig 
    return hmac.new(secret, sig, sha256).hexdigest() 

    File "C:\Anaconda\lib\hmac.py", line 136, in new 
    return HMAC(key, msg, digestmod) 

    File "C:\Anaconda\lib\hmac.py", line 71, in __init__ 
    if len(key) > blocksize: 

TypeError: object of type 'NoneType' has no len() 

這裏是我的代碼:

from instagram.client import InstagramAPI 
access_token = '1********4.0*****5.fb1c**********39***7365*********' 
api = InstagramAPI(access_token=access_token) 
api.user_search(q='samsungmobile') 

腳本調用最後一行時失敗api.user_search(q ='samsungmobile') 我不知道這個TypeError是如何引發的,但我懷疑它可能與訪問令牌有關。

我確定我使用的是正確的。 get_access_token.py腳本返回長度爲2的元組,第一個索引包含訪問令牌作爲字符串,第二個索引包含一個包含關於誰有權使用該應用的用戶信息的字典。

回答