无法打开Navigator(AttributeError: ‘str’ object has no attribute ‘get’)
问题描述:
Anaconda无法打开Navigator,一直处于loading applications…的状态,如图所示
但最终还是未能启动。使用prompt输入命令anaconda-navigator时,报错出现
(base) C:\Users\lenovo>anaconda-navigator
url: https://vscode-update.azurewebsites.net/api/update/win32-x64/stable/version
2021-03-31 02:12:17,133 - ERROR download_api._get_url:417
Expecting value: line 1 column 1 (char 0)
Traceback (most recent call last):
File "D:\Anaconda3\lib\site-packages\anaconda_navigator\widgets\main_window.py", line 499, in setup
self.post_setup(conda_data=conda_data)
File "D:\Anaconda3\lib\site-packages\anaconda_navigator\widgets\main_window.py", line 536, in post_setup
self.tab_home.setup(conda_data)
File "D:\Anaconda3\lib\site-packages\anaconda_navigator\widgets\tabs\home.py", line 169, in setup
self.set_applications(applications, packages)
File "D:\Anaconda3\lib\site-packages\anaconda_navigator\widgets\tabs\home.py", line 204, in set_applications
apps = self.api.process_apps(applications, prefix=self.current_prefix)
File "D:\Anaconda3\lib\site-packages\anaconda_navigator\api\anaconda_api.py", line 903, in process_apps
versions=[vsdata.get('productVersion')],
AttributeError: 'str' object has no attribute 'get'
兜兜转转,已找到解决办法。
问题分析:
'str’没有’get’方法,可以看到,versions=[vsdata.get('productVersion')],
这里出现了问题,因此,直接来解决办法。
1.首先获取vscode
获取vscode的version的办法:
https://update.code.visualstudio.com/api/update/win32-x64-user/stable/version
如图所示
直接复制版本(我的是2b9aebd…),
2.找到文件‘anaconda_api.py’
按照如图所示路径,找到anaconda_api.py文件
3.修改version,简单粗暴
打开anaconda_api.py文件后,搜索 versions=[vsdata.get('productVersion')],
,定位到如图所示位置
按照图示修改,然后重新启动Navigator即可。