阿里云oss Python SDK 使用 pyinstaller 转成 exe 运行报错解决办法

今天在使用阿里云oss python sdk打包时出现错误,生成的可执行文件运行不了,错误类似这种:

Traceback (most recent call last):
File "DDNS.py", line 39, in 
File "DDNS.py", line 11, in DDNS
File "Utils.py", line 34, in getAcsClient
File "AcsClientSingleton.py", line 17, in getInstance
File "site-packagesaliyunsdkcoreclient.py", line 99, in init
File "site-packagesaliyunsdkcoreendpointdefault_endpoint_resolver.py", line 37, in init
File "site-packagesaliyunsdkcoreendpointlocal_config_regional_endpoint_resolver.py", line 38, in init
File "site-packagesaliyunsdkcoreendpointlocal_config_regional_endpoint_resolver.py", line 71, in _read_from_endpoints_json
FileNotFoundError: [Errno 2] No such file or directory: 'C:\Users\yjvij\AppData\Local\Temp\_MEI227162\aliyunsdkcore\endpoint\endpoints.json'

问题出现原因:

试了试改动下版本问题成aliyun-python-sdk-core-v3 2.9.4
,但是不成功,最后去看了下发布在github上的包,发现了一些问题,最后简单的来说,问题的出现应该是达成了这样的条件:

1、python使用的python3 ,既pip 是python3版本的

2、安装命令是 pip install aliyun-python-sdk-core-v3 但是在
https://github.com/aliyun/aliyun-openapi-python-sdk/tree/master/aliyun-python-sdk-core
这个源码里,明明提供给了 setup.py 和 setup3.py 安装脚本 猜测应该是因为使用了pip 执行的安装导致python
版本问题,即便声明了安装 aliyun-python-sdk-core-v3

解决办法:
(1)卸载本地的aliyun-python-sdk-core及aliyun-python-sdk-core


pip uninstall aliyun-python-sdk-core
pip uninstall aliyun-python-sdk-core-v3

(2)直接从从github下载sdk源码,两种方式

git clone git@github.com:aliyun/aliyun-openapi-python-sdk.git

或者直接到github官网下载安装包 https://github.com/aliyun/aliyun-openapi-python-sdk/tree/master/aliyun-python-sdk-core

(3)命令行cd 到 aliyun-python-sdk-core 目录下,然后使用
python setup3.py install 来安装 aliyun-python-sdk-core 的python3版本

(4)pyinstaller -F xx.py 打包成exe

至此打包生成可执行文件成功,运行时也没出现上面的错误了。

亲测有效。

参考链接:
https://blog.csdn.net/hbh112233abc/article/details/89468237?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task

https://developer.aliyun.com/ask/131252?spm=a2c6h.13159736

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值