运行YouTube Data API v3示例代码找不到client_secrets_file.json怎么办
问题根因
报错FileNotFoundError: No such file or directory: 'client_secrets_file.json'的原因非常明确:你的代码里指定要读取名为client_secrets_file.json的Google OAuth客户端密钥文件,但这个文件不存在于代码设定的路径下,程序无法找到。
解决步骤
- 第一步:获取正确的客户端密钥文件
你需要先在Google Cloud控制台完成如下操作:创建项目 → 启用YouTube Data API v3服务 → 创建OAuth 2.0客户端ID(应用类型选择「桌面应用」),创建完成后下载生成的JSON格式密钥文件。 - 第二步:将密钥文件放到正确路径
你当前运行的Python脚本存放在C:\Users\m8\Desktop\ffs\目录下,直接把下载的密钥文件重命名为client_secrets_file.json,放到这个目录下和你的Python脚本同级即可。
如果不想放在同级目录,也可以把代码里的client_secrets_file = "client_secrets_file.json"修改为密钥文件的绝对路径,例如:# 注意Windows路径用正斜杠或者双反斜杠避免转义问题 client_secrets_file = "C:/Users/m8/Downloads/你的密钥文件名.json"
简化方案(适合新手)
如果你的需求只是查询公开视频的统计数据,完全不需要走复杂的OAuth鉴权,直接用API密钥即可,修改后的代码如下:
import googleapiclient.discovery def main(): api_service_name = "youtube" api_version = "v3" # 替换为你在Google Cloud控制台创建的API密钥 DEVELOPER_KEY = "你自己的API密钥" youtube = googleapiclient.discovery.build( api_service_name, api_version, developerKey=DEVELOPER_KEY) request = youtube.videos().list( part="statistics", id="dQw4w9WgXcQ" ) response = request.execute() print(response) if __name__ == "__main__": main()
API密钥可以直接在Google Cloud控制台的「凭据」页面创建,不需要下载密钥文件,配置更简单。
内容的提问来源于stack exchange,提问作者Massive_M8
相关产品推荐
相关产品推荐

