我需要能夠通過新的YouTube API v3爲經過身份驗證的用戶「按照」某個特定視頻。我下面的活動/插入導管在這裏找到:YouTube API v3:喜歡Python中的視頻
https://developers.google.com/youtube/v3/docs/activities/insert
此示例代碼運行罰款發佈公告,以我的頻道,但是當我嘗試修改身體形成一個類似的語句,我不斷收到一個400錯誤。以下是香港專業教育學院從最初的例子改變在身體字典是設置:
body = {}
body["snippet"] = dict(type='like')
body["contentDetails"] = dict(
like=dict(
resourceId=dict(
kind="youtube#video",
videoId='_M9khs87xQ8'
)
)
)
根據下面的文檔,田野似乎正確地安裝。
https://developers.google.com/youtube/v3/docs/activities
但我不斷收到一個400 HttpEror像這樣
<HttpError 400 when requesting https://www.googleapis.com/youtube/v3/activities?alt=json&part=snippet%2CcontentDetails returned "Bad Request">
香港專業教育學院還試圖適應這最喜歡的視頻行動,但得到相同的結果。我是否缺少一些必填字段?這是創建類似動作的正確端點嗎?
由於提前, 賈斯汀
更新
這個問題已經由傑夫回答工作液下面貼
for item in youtube.channels().list(part='contentDetails', mine=True).execute().get('items', []):
playlists = item['contentDetails'].get('relatedPlaylists', {})
if 'likes' in playlists:
body = {
"snippet": {
"playlistId": playlists['likes'],
"resourceId": {
"kind": 'youtube#video',
"videoId": '_M9khs87xQ8'
}
}
}
youtube.playlistItems().insert(body=body, part='snippet').execute()
感謝您的快速回復傑夫!我知道它工作得很好,並將我的代碼作爲該問題本身的更新發布。 – justquick
此外,值得注意的是,我們沒有在文檔中這樣的例子(https://developers.google.com/youtube/v3/docs/playlistItems/insert),因爲相關的播放列表的整個列表不直到最近才恢復。我只寫了在Python一個完整的工作樣本,它應該很快添加到文檔。 –