背景:
最近报了学校的的双创课,讲了些机器学习的东西。于是我这个菜狗就打算先安装一个tensorflow。
本以为是一条命令就能解决的是事情结果又出bug了。
问题描述:
看了官网的安装,想着一句pip install 就行了
pip3 install --upgrade tensorflow
结果安装了好几次都没有成功,每次进度条只能走一部分
具体报错信息
ERROR: Exception:
Traceback (most recent call last):
File "C:\Users\Wang\anaconda3\lib\site-packages\pip\_vendor\resolvelib\resolvers.py", line 171, in _merge_into_criterion
crit = self.state.criteria[name]
KeyError: 'tensorflow'
During handling of the above exception, another exception occurred:
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\Wang\anaconda3\lib\site-packages\pip\_vendor\urllib3\response.py", line 438, in _error_catcher
yield
File "C:\Users\Wang\anaconda3\lib\site-packages\pip\_vendor\urllib3\response.py", line 519, in read
data = self._fp.read(amt) if not fp_closed else b""
File "C:\Users\Wang\anaconda3\lib\site-packages\pip\_vendor\cachecontrol\filewrapper.py", line 62, in read
data = self.__fp.read(amt)
File "C:\Users\Wang\anaconda3\lib\http\client.py", line 458, in read
n = self.readinto(b)
File "C:\Users\Wang\anaconda3\lib\http\client.py", line 502, in readinto
n = self.fp.readinto(b)
File "C:\Users\Wang\anaconda3\lib\socket.py", line 669, in readinto
return self._sock.recv_into(b)
File "C:\Users\Wang\anaconda3\lib\ssl.py", line 1241, in recv_into
return self.read(nbytes, buffer)
File "C:\Users\Wang\anaconda3\lib\ssl.py", line 1099, in read
return self._sslobj.read(len, buffer)
socket.timeout: The read operation timed out
.
.
.太多了省略
.
.
File "C:\Users\Wang\anaconda3\lib\site-packages\pip\_vendor\urllib3\response.py", line 443, in _error_catcher
raise ReadTimeoutError(self._pool, None, "Read timed out.")
pip._vendor.urllib3.exceptions.ReadTimeoutError: HTTPSConnectionPool(host='pypi.tuna.tsinghua.edu.cn', port=443): Read timed out.
原因分析:
最后的问题好像落在了Read timed out
解决方案:
随后我开始在网上搜索
终于在Stack Overflow找到了相同问题,有位老哥给出了解决方法
原文链接: https://stackoverflow.com/questions/66140105/keyerror-when-installing-tensorflow.
于是我就尝试
pip install --default-timeout=100 tensorflow
结果又报错了
说我sha验证有问题
最终解决
pip3 install --default-timeout=100 tensorflow -i https://pypi.tuna.tsinghua.edu.cn/simple
这里用了清华大学的镜像加速,清华nb!
最后成功安装Tensorflow