无法将anaconda上的python软件包更新到最新版本

7

我的一些Anaconda上的Python包无法更新到最新版本。

例如,Anaconda上的beautifulsoup4最新版本是v4.71,可以在发布说明中看到。 https://docs.anaconda.com/anaconda/reference/release-notes/

然而,当我运行conda update beautifulsoup4时,我能够更新到的最新版本是v4.6。

我发现beautifulsoup4使用的频道是pypi

# Name                    Version                   Build  Channel
beautifulsoup4            4.6.0                    pypi_0    pypi 
bleach                    3.1.0                      py_0    conda-forge

我猜如果我把渠道从pypi改为conda-forge,我应该能够升级到最新版本。

我如何将渠道从pypi更改为conda-forge?或者解决方法在其他地方吗?

我的操作系统是Windows 10 64位,Python版本是3.7。


你能在conda命令行中通过pip更新吗? - Parkofadown
2
是的,但这不是在anaconda中首选的方式。我被建议只有在anaconda中找不到包时才使用pip。 - guagay_wk
你的操作系统是什么架构,32位还是64位? - lucasgcb
我记得我在使用conda时也遇到了同样的问题,当某些东西更新时它不会自动更新,你可能需要通过pip删除包并重新安装。在顶部的选项卡中可能有一个更新包或更新conda。 - Parkofadown
1个回答

8

我自己也遇到了这个问题。

让我们来看看conda-forge和PyPi中的版本:

两者实际上都是最新的。因此,这里的问题不是渠道,而是conda混淆了标签的引用。

使用以下命令更新conda:

conda update

This will actually spew out a message telling you to run the command with a prefix for the proper path for your environment. Should be something like this:

conda update --prefix C:\Users\yourAccount\AppData\Local\Continuum\anaconda3 anaconda

运行上述代码,它将更新包,其中包括beautifulsoup4。

执行完该步骤后,您会发现只需使用conda install beautifulsoup4即可创建新的环境,且会返回最新版本。


还有一件有趣的事情需要注意:

enter image description here

Win-32或Linux-32不存在4.7的分发版本。因此,如果您使用其中之一,更新conda程序无法解决问题。您需要获取源代码并自己构建(如果可能的话)。


我正在使用64位的Windows 10操作系统。我应该能够获取v4.71版本,但是目前无法获取。 - guagay_wk
运行 conda update 并按照程序指示操作,这是一个Anaconda身份验证问题,更新后将能够找到最新的发布标签。 - lucasgcb
我正在使用Windows 10。当我运行conda update时,会出现CondaValueError:no package names supplied的错误提示。我猜你在用Linux系统。 - guagay_wk
1
我实际上在两个平台上都尝试了:), 但是由于之前提到的某些问题,它不能在我32位的Linux上工作。请尝试通过conda提示来操作; conda update命令默认不会给出路径信息,这表明当前安装版本非常旧;你可以使用类似于conda update --prefix C:\Users\yourAccount\AppData\Local\Continuum\anaconda3 anaconda的命令对其进行更新。 - lucasgcb

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接