3

Python を使用して LinkedIn Developer API にアクセスしようとしましたが、リンクされた API の呼び出し中に 401 エラーが発生しました。助けていただけませんか -

Traceback (most recent call last):
  File "user_request.py", line 33, in <module>
    print app.get_profile()
  File "/Users/bchawla/anaconda/lib/python2.7/site-packages/linkedin/linkedin.py", line 179, in get_profile
    raise_for_error(response)
  File "/Users/bchawla/anaconda/lib/python2.7/site-packages/linkedin/utils.py", line 63, in raise_for_error
    raise LinkedInError(message)
linkedin.exceptions.LinkedInError: 401 Client Error: Unauthorized for url: https://api.linkedin.com/v1/people/~: Unknown Error

詳細なコードは次のとおりです-

import oauth2 as oauth
import urlparse
from linkedin import linkedin

consumer_key           = "{Key}"
consumer_secret        = "{Secret}"
consumer = oauth.Consumer(consumer_key, consumer_secret)
client = oauth.Client(consumer)

request_token_url      = 'https://api.linkedin.com/uas/oauth/requestToken'
resp, content = client.request(request_token_url, "POST")
if resp['status'] != '200':
    raise Exception("Invalid response %s." % resp['status'])

print content

request_token = dict(urlparse.parse_qsl(content))

print "    - oauth_token        = %s" % request_token['oauth_token']
print "    - oauth_token_secret = %s" % request_token['oauth_token_secret']


auth = linkedin.LinkedInDeveloperAuthentication(consumer_key, consumer_secret,
request_token['oauth_token'], request_token['oauth_token_secret'], '',
permissions=linkedin.PERMISSIONS.enums.values())

print linkedin.PERMISSIONS.enums.values()

app = linkedin.LinkedInApplication(auth)

print app.get_profile()
4

1 に答える 1

4

あなたが使用しようとしている people API を含む、古いリンクされた API の大部分は減価償却され、事前に承認された開発者のみに制限されています。開発プログラムに参加する必要があります (非常に小さなセットに限定されています)。彼らが積極的に協力している企業の数)。

参照: https://developer-programs.linkedin.com/documents/people-search-api

People Search API は、Vetted API Access Program の一部です。この API を使用する前に、こちらから申請し、LinkedIn の承認を得る必要があります。

参照: https://developer.linkedin.com/blog/posts/2015/developer-program-changes

2015 年 5 月 12 日以降、オープン API を制限して、次の用途のみをサポートします。

  • メンバーは、プロファイル API を使用して、LinkedIn プロファイルを介して職業上のアイデンティティを表すことができます。
  • メンバーは、プロフィールに追加ツールを使用して、LinkedIn プロフィールに認定資格を直接投稿できます。
  • メンバーは、Share API を利用して、Web 全体から専門的なコンテンツを LinkedIn ネットワークに共有できます。
  • Company API を使用して、企業が専門的なコンテンツを LinkedIn に共有できるようにします。

これは、受け取ったエラー コードと一致しています401 - Unauthorized: Access is denied due to invalid credentials.。開発者プログラムに参加していないため、アクセスするための有効な資格情報がありません。

于 2016-02-23T04:26:04.613 に答える