安装pysyft遇到UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0x9a in position 3594: illegal multibyte
记录一下安装pysyft踩过的坑~~
根据官网使用命令即可
pip install syft
但是出现TimeOut的报错,因此换成清华大学镜像:
pip install syft -i https://pypi.tuna.tsinghua.edu.cn/simple/
出现了如下报错:
仔细阅读发现是由于这句话:
File "C:\Users\Lucky\AppData\Local\Temp\pip-install-nfbmiit1\autodp_154cac55d2ad4cebbac6f4d791785506\setup.py", line 6, in <module> long_description = f.read() UnicodeDecodeError: 'gbk' codec can't decode byte 0x9a in position 3594: illegal multibyte sequence
查资料是找到这个setup.py的文件夹,然后在open的参数中加入mode='r’和encoding='UTF-8’参数
但是Temp文件夹下并没有pip-install-nfbmiit1这个文件夹…
于是仔细看报错发现这个报错是在执行下面这个的时候报错:
Collecting autodp==0.2 Using cached https://pypi.tuna.tsinghua.edu.cn/packages/78/7c/63aa6d37b9d9f0f68d1231e1b3247c3ac83c634f451f8bcbd9a5c7a55db0/autodp-0.2.tar.gz (39 kB) Preparing metadata (setup.py) ... error
这就比较清楚了,去下面这个链接下载autodp这个压缩包
https://pypi.org/
下载完之后打开autodp-0.2.tar.gz,编辑setup.py文件
压缩包里不能编辑setup这个文件,解压之后修改代码,将第6行修改为:
with open("README.md", 'r', encoding='UTF-8') as f:
然后又遇到问题了…
windows10怎么压缩成tar.gz的压缩包…
找了很多资料需要下载软件,不想下载软件于是找到了一个可以在命令行里执行的:
https://www.addictivetips.com/windows-tips/use-tar-on-windows-10/
https://zhuanlan.zhihu.com/p/456914453
打开Windows PowerShell,然后输入命令:
tar -cvzf autodp-0.2.tar.gz "D:\autodp-0.2"
autodp-0.2.tar.gz是要压缩成的文件的名字,会存放在当前目录下(这里是D盘)有一点需要注意的是要压缩的autodp-0.2这个文件最好放在C、D、或E盘下,不要放在其他子目录下,不然压缩之后他在autodp-0.2这个文件夹外面加上那些目录。
我的python放在D盘,所以接下来进入D盘输入命令:
pip install autodp-0.2.tar.gz
然后出现了
接下来再install autodp终于成功了。。。
然后使用命令继续安装syft出现:
ERROR: Could not install packages due to an OSError: [WinError 5] 拒绝访问。: 'd:\\python\\python3.7\\lib\\site-packages\\~umpy\\.libs\\libopenblas.TXA6YQSD3GCQQC22GEQ54J2UDCXDXHWN.gfortran-win_amd64.dll'
Consider using the `--user` option or check the permissions.
把命令改成:
pip install --user syft -i https://pypi.tuna.tsinghua.edu.cn/simple/
终于安装成功了。。。
参考:https://blog.csdn.net/a_littleBAI/article/details/123058304