Google Ads API调用报v8弃用、v10版本不存在问题排查
问题根因
两个报错的核心原因是你运行脚本时加载的google-ads客户端库并非最新版本,之前的卸载重装操作没有生效,pip安装的包和你运行脚本使用的Python环境不匹配:
- 第一个报错是客户端本地校验抛出的:你当前环境加载的旧版google-ads库最高仅支持到v8版本的Ads API,无法识别v10版本标识,因此直接在本地拦截了请求
- 第二个报错是Google服务端返回的:v8版本的Google Ads API早已停止服务,所有发往该版本的请求都会被服务端直接拦截拒绝
解决步骤
- 先对齐pip和运行脚本的Python环境
在你运行Python脚本的同一个终端窗口中执行以下命令,确认二者路径匹配:
# macOS/Linux which python3 which pip3 # Windows where python where pip
如果两个输出路径不属于同一个Python环境目录(比如一个指向系统Python目录,一个指向虚拟环境目录),说明你之前的包装错了位置。如果使用虚拟环境、Conda环境,先执行激活命令切到对应环境再做后续操作。
- 校验当前环境的google-ads包实际版本
环境对齐后执行以下命令查看已安装的包版本:
pip show google-ads
如果输出的版本号低于21.0.0,说明当前环境用的还是旧版包——2023年之后发布的新版google-ads客户端最低支持v13以上版本的API,根本不会出现仅识别到v8版本的情况。
- 安装最新版客户端并调整代码
执行升级命令安装最新版客户端:
pip install --upgrade google-ads
安装完成后重新执行pip show google-ads确认版本升级成功,之后可以去掉代码里写死的版本参数,直接用GoogleAdsClient.load_from_storage()即可,客户端会自动匹配当前支持的最新稳定版API,避免后续版本迭代再出现同类版本不匹配问题。
内容的提问来源于stack exchange,提问作者tarik
相关产品推荐
相关产品推荐

