如何用Python的request库借助Cookie创建及修改YouTube播放列表
风险提示
- 这种方式违反YouTube服务条款,可能导致账号封禁,仅作技术研究参考,请勿用于违规操作。
- 需从已登录YouTube的浏览器中提取关键Cookie字段(如
LOGIN_INFO、SAPISID、HSID等)。
核心实现步骤及代码示例
1. 提取并整理Cookie
从浏览器开发者工具(F12)的存储面板中,复制YouTube域名下的Cookie,整理为字典格式:
cookies = { "LOGIN_INFO": "你的LOGIN_INFO值", "SAPISID": "你的SAPISID值", "HSID": "你的HSID值", # 补充其他必要Cookie字段 }
2. 构造请求头
YouTube内部API需要特定授权头和客户端信息,其中Authorization需基于SAPISID生成:
import time import hashlib def generate_sapisid_auth(sapisid, origin): timestamp = str(int(time.time())) sapisid_hash = hashlib.sha1(f"{timestamp} {sapisid} {origin}".encode()).hexdigest() return f"SAPISIDHASH {timestamp}_{sapisid_hash}" headers = { "Authorization": generate_sapisid_auth(cookies["SAPISID"], "https://www.youtube.com"), "X-Origin": "https://www.youtube.com", "X-Youtube-Client-Name": "1", "X-Youtube-Client-Version": "2.20240520.01.00", "Content-Type": "application/json" }
3. 创建播放列表
向YouTube内部API端点发送POST请求:
import requests create_payload = { "title": "自定义播放列表", "description": "通过Cookie创建的测试列表", "privacyStatus": "PRIVATE" # 可选值:PUBLIC、UNLISTED、PRIVATE } response = requests.post( "https://www.youtube.com/youtubei/v1/playlist/create?key=AIzaSyAO_FJ2SlqU8Q4STEHLGCilw_Y9_11qcW8", cookies=cookies, headers=headers, json={"context": {"client": {"clientName": "WEB", "clientVersion": "2.20240520.01.00"}}, **create_payload} ) if response.status_code == 200: playlist_id = response.json()["playlistId"] print(f"播放列表创建成功,ID:{playlist_id}") else: print(f"创建失败:{response.text}")
4. 修改播放列表(重命名/更新描述)
发送POST请求到更新端点:
update_payload = { "playlistId": playlist_id, "title": "修改后的播放列表标题", "description": "更新后的描述内容" } response = requests.post( "https://www.youtube.com/youtubei/v1/playlist/update?key=AIzaSyAO_FJ2SlqU8Q4STEHLGCilw_Y9_11qcW8", cookies=cookies, headers=headers, json={"context": {"client": {"clientName": "WEB", "clientVersion": "2.20240520.01.00"}}, **update_payload} ) if response.status_code == 200: print("播放列表修改成功") else: print(f"修改失败:{response.text}")
关键注意事项
- YouTube内部API无公开文档,端点、参数随时可能变更,上述代码可能随时失效。
- 频繁操作或异常请求会触发反爬机制,导致账号受限甚至封禁。
- 合规场景下优先使用官方YouTube Data API,稳定且安全。
内容的提问来源于stack exchange,提问作者Nông Minh
相关产品推荐
相关产品推荐

