web-dev-qa-db-ja.com

AnacondaからURLチャネルを削除するにはどうすればよいですか?

最近、Anacondaを使用して私のプログラムの1つにPyPdf2をインストールする必要がありました。残念ながら、私は失敗しましたが、Anaconda環境に追加されたURLは、すべてのCondaライブラリの更新を禁止しています。 anacondaを更新しようとするたびに、次のようになります。

conda update conda
Using Anaconda Cloud api site https://api.anaconda.org
Fetching package metadata ..........Error: Invalid index file: https://pypi.python.org/pypi/PyPDF2/1.26.0/win-64/repodata.json: No JSON object could be decoded

コマンドconda infoを入力して、エラーの原因を確認しました。PyPdf2を指すURLがたくさん見つかりました。

単純に、anacondaのチャンネルURLからこれらすべてのURLを削除したいのですが、どうすればいいですか?手動でも自動でも。

注:Anacondaをアンインストールして再インストールしましたが、運はありません!

C:\WINDOWS\system32>conda info
Using Anaconda Cloud api site https://api.anaconda.org
Current conda install:

             platform : win-64
        conda version : 4.1.6
    conda-env version : 2.5.1
  conda-build version : 1.21.3
       python version : 2.7.12.final.0
     requests version : 2.10.0
     root environment : C:\Anaconda2  (writable)
  default environment : C:\Anaconda2
     envs directories : C:\Anaconda2\envs
        package cache : C:\Anaconda2\pkgs
         channel URLs : https://pypi.python.org/pypi/PyPDF2/1.26.0/win-64/
                        https://pypi.python.org/pypi/PyPDF2/1.26.0/noarch/
                        https://conda.anaconda.org/C:\Python27\Lib\site-packages\PyPDF2/win-64/
                        https://conda.anaconda.org/C:\Python27\Lib\site-packages\PyPDF2/noarch/
                        https://conda.anaconda.org/X:\Downloads\Compressed\PyPDF2-master\/win-64/
                        https://conda.anaconda.org/X:\Downloads\Compressed\PyPDF2-master\/noarch/
                        https://github.com/mstamy2/PyPDF2/zipball/master/win-64/
                        https://github.com/mstamy2/PyPDF2/zipball/master/noarch/
                        https://pypi.python.org/pypi/PyPDF2/win-64/
                        https://pypi.python.org/pypi/PyPDF2/noarch/
                        https://pythonhosted.org/PyPDF2/win-64/
                        https://pythonhosted.org/PyPDF2/noarch/
                        https://github.com/mstamy2/PyPDF2/win-64/
                        https://github.com/mstamy2/PyPDF2/noarch/
                        https://repo.continuum.io/pkgs/free/win-64/
                        https://repo.continuum.io/pkgs/free/noarch/
                        https://repo.continuum.io/pkgs/pro/win-64/
                        https://repo.continuum.io/pkgs/pro/noarch/
          config file : C:\Users\Dr. Mohammad Elnesr\.condarc
         offline mode : False
    is foreign system : False
25
Mohammad ElNesr

Mohammedの answer を展開します。

conda infoに表示されるURLはすべて、チャンネルのURLです。これらはcondaがパッケージを探す場所です。 @celで述べたように、これらのチャネルはホームディレクトリの.condarcファイルにあります。

.condarcコマンドを使用して、conda configファイル内のチャネルおよびその他のデータと対話できます。たとえば、.condarcファイルに次のチャネルがリストされているとします。

channels:
  - https://github.com/mstamy2/PyPDF2/  
  - defaults

次に、conda config --get channelsを実行すると、返されます:

--add channels 'defaults'   # lowest priority
--add channels 'https://github.com/mstamy2/PyPDF2/'   # highest priority

Githubチャネルを削除する場合は、conda config --remove channels 'https://github.com/mstamy2/PyPDF2/'を実行します。 --addコマンドを使用してチャネルを追加することもできます。たとえば、conda config --add channels 'https://github.com/mstamy2/PyPDF2/'を使用してそのチャネルを追加し直すことができます。

この場合、削除するチャネルがいくつかあるため、.condarcを直接編集する方が簡単かもしれませんが、conda configを使用して行う方法を知っておくと便利です。

27
Paul

幸いなことに、私は答えを見つけました(@celにも感謝します)。

C:\Users\{MyUserName}\に移動した後、名前のないファイルを見つけましたが、奇妙な拡張子(.condarc)を持っています。Notepad++で開いたところ、以下のファイルが見つかりました>

enter image description here

次に、最後の行を除くすべての行を削除し、ファイルを保存してから、conda update condaコマンドを実行しましたが、エラーなしで機能します。

19
Mohammad ElNesr

私の答えが、Mac OS端末を使用している他の誰かの助けになることを願っています。誤って「new_channel」をチャンネルリストに追加しましたが、削除する方法がわかりませんでした。また、.condarcファイルが見つかりませんでした(誰かが私を啓発してくれるかもしれません)が、これを完了するために端末を使用することができました。

Condaには2種類の「チャンネル」があります。 1つはチャネルで、もう1つはチャネルURLです。チャンネルURLを削除しようとしている場合、次を使用して削除することはできません。

conda config --remove channels

元々conda infoそして、以下を見ました:

チャンネルURL:

         https://repo.anaconda.com/pkgs/pro/osx-64
         https://repo.anaconda.com/pkgs/pro/noarch
         https://conda.anaconda.org/new_channel/osx-64
         https://conda.anaconda.org/new_channel/noarch

だから、次のように入力することを考えていました。

conda config --remove channels https://conda.anaconda.org/new_channel/osx-64

これは動作しません。

次のように入力する必要があります。

conda config --show channels

チャンネルが表示されます:

チャンネル:

  • デフォルト

  • new_channel

これで、チャンネルの名前がわかりました。 new_channelと呼ばれます(明らかなように思えるかもしれませんが、初心者にはわかりません)。

次のように入力します:

conda config --remove channels new_channel

ブーム、new_channel URLはすべてなくなりました。

OPの場合、彼のチャンネルはおそらくPyPdf2と呼ばれていました。

したがって、ターミナルに入力する正しいコードは次のとおりです。

conda config --remove channels PyPdf2

もう一度、チャンネルURLを削除しようとしないでください。チャンネル自体を削除してください。

6
Lionel Yu