PIPを使用して新しいpythonパッケージをインストールする場合、同じ名前の別のパッケージがあるため、パッケージ名を変更できますか?
または、既存のパッケージの名前を変更するにはどうすればよいですか?
これを行う1つの方法は、
pip download
Docs here を参照してください。ダウンロード後にパッケージの名前を変更し、手動でインストールすることができます。私はこれをテストしていませんが、うまくいくようです。
同じプロジェクトに両方のパッケージが必要ない場合は、virtualenvを使用します。 virtualenvでは、異なるバージョンのパッケージを使用することもできます。
別の方法は、おそらくすでに述べたようにサイトパッケージです。
https://virtualenv.pypa.io/en/stable/
http://docs.python-guide.org/en/latest/dev/virtualenvs/#lower-level-virtualenv
新しいvirtualenvを作成してから、パッケージを新しいvirtualenvにインストールします。これにより、異なるバージョンのパッケージを使用することもできます。
Pip install 'module'を使用しているときに正しいパッケージをインストールするのに苦労している場合は、常に対応するホイールファイル(拡張子.whl)をダウンロードして、pipを使用して直接インストールできます。これは、過去のさまざまな状況で私に役立ちました。
Pipに引数を指定して「インポートパス」(インストール名)を変更することはできません。他のすべてのオプションでは、何らかの「パッケージの変更」が必要です。
A. pip install -e git+http://some_url#Egg=some-name
を使用します。これにより、両方のパッケージのインポートパスが同じであっても、異なるディレクトリに保存されます(some-name
の後に提供される#Egg=
を使用)。この後、パッケージのソースディレクトリ(通常はvenv/src/some-name
)に移動し、一部のフォルダの名前を変更してインポートパスを変更できます
紀元前。リポジトリをフォークし、変更を加えてから、そのリポジトリからパッケージをインストールします。または、別の名前を使用してPyPIでパッケージを公開し、名前でインストールすることもできます
D. pip download
を使用してプロジェクトにパッケージの1つを配置し、必要に応じてフォルダーの名前を変更する
ライブラリ gmail および pygmail でこの問題が発生しました。どちらもPYTHONPATH/site-packages/gmail/
にインストールしようとしています。明らかにpygmailパッケージには問題があり、pygmailフォルダーにインストールする必要がありますが、何年も更新を行っていません。
暫定的な解決策として、1つ(pygmail)をインストールしてから、フォルダー名(gmail-> pygmail、およびgmail-v#.dist-info-> pygmail-v#.dist-info)を変更し、2番目をインストールしました通常は1つ。最初のパッケージを更新しようとしない限り、動作するようです。 import gmail
およびimport pygmail
は正常に機能します。
あなたが参照しているパッケージの少なくとも1つがパッケージに一意の名前を適用しているため、 https://pypi.org/ からインストールされていないと思います。これは、そのパッケージをソースからインストールすることを意味します。つまり、パッケージの名前を自由に変更できます。これを行うには、setup.py
問題のあるパッケージのルートにあるファイル。
Pipを使用してパッケージの名前を変更することはできないと思います。 pipは存在するパッケージをインストールでき、パッケージ名を変更するために書き込むパッケージ名がない場合はエラーを出すからです。