Python使用FedEx API报错:找不到config模块求助
解决Fedex库导入
FedexConfig的ImportError问题 你遇到的这个导入错误,是因为当前安装的fedex库版本已经移除了fedex.config.FedexConfig模块——旧的配置类写法已经不再适用于新版本的库了。下面是两种可行的解决思路:
方案一:使用新版本库的正确写法(推荐)
新版本的fedex库已经把认证参数直接整合到各个服务类中,不需要单独创建FedexConfig对象。以调用运费查询服务为例,代码可以改成这样:
# 根据你需要的功能导入对应服务类,比如RateService(运费)、ShipService(发货)等 from fedex.services.rate_service import RateService # 直接初始化服务时传入认证信息 service = RateService( key='<你的Fedex API Key>', password='<你的Fedex密码>', account_number='<你的Fedex账户号>', meter_number='<你的Fedex计量器编号>', use_test_server=True # 测试环境开启此参数,生产环境改为False ) # 示例:添加发货地址参数 from fedex.models.address import Address service.origin_address = Address( street_lines=['123 Main St'], city='Memphis', state_or_province_code='TN', postal_code='38103', country_code='US' ) # 调用服务并获取结果 response = service.send_request() print(response)
你可以根据实际需求,导入fedex.services下对应的服务类(比如TrackService处理物流追踪),所有服务类都支持直接传入上述认证参数。
方案二:回退到支持FedexConfig的旧版本(不推荐)
如果你必须沿用旧代码结构,可以卸载当前版本,安装一个保留FedexConfig的旧版本(比如2.5.0):
pip uninstall -y fedex pip install fedex==2.5.0
安装完成后,你原来的代码就能正常运行了,但注意旧版本可能存在安全漏洞,且不再支持Fedex的新API功能,因此更推荐使用方案一的新版本写法。
内容的提问来源于stack exchange,提问作者Rafael D Portilla
相关产品推荐
相关产品推荐

