0

YouTube分析APIを使用してデータを取得しようとしています。access_token を取得したら、それを使用してリクエストを作成し、ユーザーの情報を取得できます。Python リクエストは次のとおりです。

newurl='https://gdata.youtube.com/feeds/api/users/default?'
token={'v':'2.1', 'access_token':access_token}
urll = newurl + urllib.urlencode(token)
result = urllib.urlopen(newurl + urllib.urlencode(token)).read()

次に、同じ access_token を使用して、次のような 2 番目の要求を作成しようとしました。

newurl2='https://www.googleapis.com/youtube/analytics/v1/reports'
newtoken={'v':'2.1', 
      'start-date':'2010-10-10',
      'end-date': ###current time###,
      'metrics':'views,comments,likes,dislikes,shares',
      'ids':'channel==' ###user_id###,
      'access_token':access_token}
result = urllib.urlopen(newurl2 + urllib.urlencode(newtoken)).read()

しかし、ここでエラーが発生しました:

"code": 401,
"message": "Invalid Credentials"

PHP を使用しているときに 2 番目の要求を正常に作成できますが、Python を使用してエラーが発生した理由がわかりません。誰か助けてもらえますか?? ありがとう!!

4

2 に答える 2

0

API 呼び出しについて話すことはできませんが、「?」が抜けているようです。newurl2 の末尾。

于 2012-11-19T02:44:09.763 に答える
0

これには、すべての oauth フローを処理する python gapi クライアント ライブラリを使用することを強くお勧めします。

v=2.1 パラメーターについて混乱しています。分析 API は V1 に達したばかりで、v API はありません。V2 データ API を新しい分析 API と一緒に使用しようとしたことはありません。V3 データ API と V1 分析 API は非常に似ているため、個人的には一緒に使用することに固執します。

最後に、アクセス トークンを取得した oauth2 スコープを確認します。データ API と分析 API には異なるスコープが必要です (「https://www.googleapis.com/auth/yt-analytics.readonly」が必要です)。分析)

于 2012-11-19T18:26:49.893 に答える