使用boto3 1.26.155连接Glue客户端报错:未知服务‘glue’
解决boto3无法识别Glue服务的问题
可能的原因及解决方案
1. 同步升级botocore版本
boto3的服务定义依赖botocore,单独升级boto3可能无效,需同步更新两者:
pip install --upgrade boto3 botocore
验证版本匹配情况:
import boto3 import botocore print(boto3.__version__) print(botocore.__version__)
boto3 1.26.155对应的botocore版本应为1.29.155左右,确保两者版本一致。
2. 确认Python环境一致性
检查当前运行代码的Python环境与执行pip命令的环境是否匹配:
which python which pip
如果使用虚拟环境,先激活环境再执行升级操作,避免修改系统环境的依赖包。
3. 手动指定Glue服务端点
若服务列表仍无法加载,可手动指定对应区域的Glue端点:
import boto3 glue_client = boto3.client( 'glue', region_name='us-east-1', # 替换为你的目标区域 endpoint_url='https://glue.us-east-1.amazonaws.com' )
中国区示例(如cn-north-1):
glue_client = boto3.client( 'glue', region_name='cn-north-1', endpoint_url='https://glue.cn-north-1.amazonaws.com.cn' )
4. 清理botocore缓存
旧的服务定义缓存可能导致异常,删除缓存目录后重新运行代码:
- Linux/macOS: 删除
~/.botocore/cache - Windows: 删除
C:\Users\<你的用户名>\.botocore\cache
内容的提问来源于stack exchange,提问作者Ankit Shaw
相关产品推荐
相关产品推荐

