使用Python调用Google API Client时遇UnknownApiNameOrVersion错误
排查
UnknownApiNameOrVersion: name: youtube version: v3错误的步骤 以下是针对该报错的常见排查和修复方法:
1. 检查并更新依赖库版本
旧版本的google-api-python-client可能无法正确识别Youtube Data API v3的发现文档,执行命令更新相关依赖:
pip install --upgrade google-api-python-client google-auth-httplib2 google-auth-oauthlib
2. 清理API发现文档缓存
客户端库会缓存发现文档,缓存损坏或过时会触发该错误。找到对应缓存目录并删除所有文件:
- Windows:
%APPDATA%\gcloud\discovery_cache - macOS/Linux:
~/.config/gcloud/discovery_cache
删除后重新运行代码。
3. 手动指定发现文档URL
如果缓存或自动拉取存在问题,可在build方法中强制指定远程发现文档地址,绕过本地缓存:
import json from googleapiclient.discovery import build from google.oauth2.credentials import Credentials def load_credentials(): with open("client_secret.json", "r") as file: credentials_data = json.load(file) return Credentials.from_authorized_user_info(credentials_data) credentials = load_credentials() youtube = build( 'youtube', 'v3', credentials=credentials, discoveryServiceUrl='https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest' )
4. 验证网络连通性
确认你的环境能正常访问Google发现文档地址,若无法访问,需检查网络代理或防火墙设置,确保请求能到达目标地址。
内容的提问来源于stack exchange,提问作者Cat Dojo かわいい
相关产品推荐
相关产品推荐

