首页 > 解决方案 > 使用 pip 安装包

问题描述

我有一个用于 python 的离线存储库。当我尝试从 PyCharm 终端安装软件包时,出现错误。

pip install http://IP_Adress/PythonRepositories/Windows/repo.anaconda.com/pkgs/main/win-64 Selenium

错误是:

    (venv) C:\Users\Administrator\PycharmProjects\pythonProject>pip install http://IP_Address/PythonRepositories/Windows/repo.anaconda.com/pkgs/main/win-64 Selenium
Collecting http://IP_Address/PythonRepositories/Windows/repo.anaconda.com/pkgs/main/win-64
  Downloading http://IP_Address/PythonRepositories/Windows/repo.anaconda.com/pkgs/main/win-64
     - 3.5 MB 5.0 MB/s
  ERROR: Cannot unpack file C:\Users\Administrator\AppData\Local\Temp\1\pip-unpack-_b5zun_c\win-64 (downloaded from C:\Users\Administrator\AppData\Local\Temp\1\pip-req-build-aechvlnx, content-type: text/html;charset=ISO-8859-1); cannot
 detect archive format
ERROR: Cannot determine archive format of C:\Users\Administrator\AppData\Local\Temp\1\pip-req-build-aechvlnx

离线存储库只有 tar.bz 文件。我认为这可能是问题所在,并试图从 tar.bz 中提取硒数据包。

tar -xvf Selenium-3.9.0-py36_0.tar.bz2

此命令提取 2 个目录,它们是infoLib。我不明白应该给 pip 哪个目录才能安装,所以我写了两个目录。我又遇到了错误。

(venv) C:\Users\Administrator\PycharmProjects\pythonProject>pip install http://IP_Address/PythonRepositories/Windows/repo.anaconda.com/pkgs/main/win-64/extracted_files Selenium
Collecting http://IP_Address/PythonRepositories/Windows/repo.anaconda.com/pkgs/main/win-64/extracted_files
  Downloading http://IP_Address/PythonRepositories/Windows/repo.anaconda.com/pkgs/main/win-64/extracted_files (1.5 kB)
  ERROR: Cannot unpack file C:\Users\Administrator\AppData\Local\Temp\1\pip-unpack-pyjq7zca\extracted_files (downloaded from C:\Users\Administrator\AppData\Local\Temp\1\pip-req-build-p1p94wxu, content-type: text/html;charset=ISO-8859-1
); cannot detect archive format
ERROR: Cannot determine archive format of C:\Users\Administrator\AppData\Local\Temp\1\pip-req-build-p1p94wxu

(venv) C:\Users\Administrator\PycharmProjects\pythonProject>pip install http://IP_Address/PythonRepositories/Windows/repo.anaconda.com/pkgs/main/win-64/extracted_files/info Selenium
Collecting http://IP_Address/PythonRepositories/Windows/repo.anaconda.com/pkgs/main/win-64/extracted_files/info
  Downloading http://IP_Address/PythonRepositories/Windows/repo.anaconda.com/pkgs/main/win-64/extracted_files/info (2.8 kB)
  ERROR: Cannot unpack file C:\Users\Administrator\AppData\Local\Temp\1\pip-unpack-g49u5kfo\info (downloaded from C:\Users\Administrator\AppData\Local\Temp\1\pip-req-build-xe2_za7n, content-type: text/html;charset=ISO-8859-1); cannot d
etect archive format
ERROR: Cannot determine archive format of C:\Users\Administrator\AppData\Local\Temp\1\pip-req-build-xe2_za7n

(venv) C:\Users\Administrator\PycharmProjects\pythonProject>pip install http://IP_Address/PythonRepositories/Windows/repo.anaconda.com/pkgs/main/win-64/extracted_files/Lib Selenium
Collecting http://IP_Address/PythonRepositories/Windows/repo.anaconda.com/pkgs/main/win-64/extracted_files/Lib
  Downloading http://IP_Address/PythonRepositories/Windows/repo.anaconda.com/pkgs/main/win-64/extracted_files/Lib (1.1 kB)
  ERROR: Cannot unpack file C:\Users\Administrator\AppData\Local\Temp\1\pip-unpack-kvgxbu_1\Lib (downloaded from C:\Users\Administrator\AppData\Local\Temp\1\pip-req-build-orjzw289, content-type: text/html;charset=ISO-8859-1); cannot de
tect archive format
ERROR: Cannot determine archive format of C:\Users\Administrator\AppData\Local\Temp\1\pip-req-build-orjzw289

此外,我还尝试了以下命令,这再次导致错误。

C:\Users\Administrator\PycharmProjects\pythonProject>pip install selenium
WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.
HTTPSConnection object at 0x000000D513C67670>: Failed to establish a new connection: [Errno 11001] getaddrinfo failed')': /simple/selenium/
WARNING: Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.
HTTPSConnection object at 0x000000D513C67A90>: Failed to establish a new connection: [Errno 11001] getaddrinfo failed')': /simple/selenium/
WARNING: Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.
HTTPSConnection object at 0x000000D513C67C10>: Failed to establish a new connection: [Errno 11001] getaddrinfo failed')': /simple/selenium/
WARNING: Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.
HTTPSConnection object at 0x000000D513C67DF0>: Failed to establish a new connection: [Errno 11001] getaddrinfo failed')': /simple/selenium/
WARNING: Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.
HTTPSConnection object at 0x000000D513C5B4F0>: Failed to establish a new connection: [Errno 11001] getaddrinfo failed')': /simple/selenium/
ERROR: Could not find a version that satisfies the requirement selenium (from versions: none)
ERROR: No matching distribution found for selenium



(venv) C:\Users\Administrator\PycharmProjects\pythonProject>pip install --trusted-host IP_Address  http://IP_Address/PythonRepositories/Windows/repo.anaconda.com/pk
gs/main/win-64/ selenium
Collecting http://IP_Address/PythonRepositories/Windows/repo.anaconda.com/pkgs/main/win-64/
  Downloading http://IP_Address/PythonRepositories/Windows/repo.anaconda.com/pkgs/main/win-64/
     - 3.5 MB ...
  ERROR: Cannot unpack file C:\Users\Administrator\AppData\Local\Temp\1\pip-unpack-17_v5oie\win-64 (downloaded from C:\Users\Administrator\AppData\Local\Temp\1\pip-req-
build-h0c_a540, content-type: text/html;charset=ISO-8859-1); cannot detect archive format
ERROR: Cannot determine archive format of C:\Users\Administrator\AppData\Local\Temp\1\pip-req-build-h0c_a540



(venv) C:\Users\Administrator\PycharmProjects\pythonProject>pip install --trusted-host IP_Address --extra-index-url http://IP_Address/PythonRepositories/Windows/rep
o.anaconda.com/pkgs/main/win-64/ selenium
Looking in indexes: https://pypi.org/simple, http://IP_Address/PythonRepositories/Windows/repo.anaconda.com/pkgs/main/win-64/
WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.
HTTPSConnection object at 0x000000C5BCEA9A30>: Failed to establish a new connection: [Errno 11001] getaddrinfo failed')': /simple/selenium/
WARNING: Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.
HTTPSConnection object at 0x000000C5BCEA9BE0>: Failed to establish a new connection: [Errno 11001] getaddrinfo failed')': /simple/selenium/
WARNING: Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.
HTTPSConnection object at 0x000000C5BCEA9D90>: Failed to establish a new connection: [Errno 11001] getaddrinfo failed')': /simple/selenium/
WARNING: Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.
HTTPSConnection object at 0x000000C5BCEA9F40>: Failed to establish a new connection: [Errno 11001] getaddrinfo failed')': /simple/selenium/
WARNING: Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.
HTTPSConnection object at 0x000000C5BCED7130>: Failed to establish a new connection: [Errno 11001] getaddrinfo failed')': /simple/selenium/
ERROR: Could not find a version that satisfies the requirement selenium (from versions: none)
ERROR: No matching distribution found for selenium


(venv) C:\Users\Administrator\PycharmProjects\pythonProject>pip install --trusted-host IP_Address http://IP_Address/PythonRepositories/Windows/repo.anaconda.com/pkg
s/main/win-64/ "selenium-3.9.0-py36_."
ERROR: Invalid requirement: 'selenium-3.9.0-py36_.'

编辑

我尝试下面写在答案中的命令。它给出了不同的行为。它开始下载真正的包(876 KB),但出现错误并退出。

注意我的客户的pip版本是20.2.3

(venv) C:\Users\Administrator\PycharmProjects\pythonProject>pip install http://IP_Address/PythonRepositories/Windows/repo.anaconda.com/pkgs/main/win-64/selenium-3.9.0-py36_0.tar.bz2
Collecting http://IP_Address/PythonRepositories/Windows/repo.anaconda.com/pkgs/main/win-64/selenium-3.9.0-py36_0.tar.bz2
  Downloading http://IP_Address/PythonRepositories/Windows/repo.anaconda.com/pkgs/main/win-64/selenium-3.9.0-py36_0.tar.bz2 (876 kB)
     |████████████████████████████████| 876 kB 6.4 MB/s
    ERROR: Command errored out with exit status 1:
     command: 'c:\users\administrator\pycharmprojects\pythonproject\venv\scripts\python.exe' -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\Administrator\\AppData\\Local\\Temp\\1\\pi
p-req-build-mk5is0qr\\setup.py'"'"'; __file__='"'"'C:\\Users\\Administrator\\AppData\\Local\\Temp\\1\\pip-req-build-mk5is0qr\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read
().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base 'C:\Users\Administrator\AppData\Local\Temp\1\pip-pip-egg-info-hvvkolxv'
         cwd: C:\Users\Administrator\AppData\Local\Temp\1\pip-req-build-mk5is0qr\
    Complete output (5 lines):
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "C:\Users\Administrator\AppData\Local\Programs\Python\Python38\lib\tokenize.py", line 392, in open
        buffer = _builtin_open(filename, 'rb')
    FileNotFoundError: [Errno 2] No such file or directory: 'C:\\Users\\Administrator\\AppData\\Local\\Temp\\1\\pip-req-build-mk5is0qr\\setup.py'
    ----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.utput.

我还得到了 pip 安装日志。他们在下面。似乎缺少“setup.py”文件或目录。我应该下载该软件包并将其放在目录中吗?有那个包的链接吗?

2021-01-15T09:32:20,060 Using pip 20.2.3 from c:\users\administrator\pycharmprojects\pythonproject\venv\lib\site-packages\pip (python 3.8)
2021-01-15T09:32:20,076 Non-user install because user site-packages disabled
2021-01-15T09:32:20,076 Created temporary directory: C:\Users\Administrator\AppData\Local\Temp\1\pip-ephem-wheel-cache-oyzheyaq
2021-01-15T09:32:20,076 Created temporary directory: C:\Users\Administrator\AppData\Local\Temp\1\pip-req-tracker-5t2tri7w
2021-01-15T09:32:20,076 Initialized build tracking at C:\Users\Administrator\AppData\Local\Temp\1\pip-req-tracker-5t2tri7w
2021-01-15T09:32:20,076 Created build tracker: C:\Users\Administrator\AppData\Local\Temp\1\pip-req-tracker-5t2tri7w
2021-01-15T09:32:20,076 Entered build tracker: C:\Users\Administrator\AppData\Local\Temp\1\pip-req-tracker-5t2tri7w
2021-01-15T09:32:20,076 Created temporary directory: C:\Users\Administrator\AppData\Local\Temp\1\pip-install-j3apk6ad
2021-01-15T09:32:20,076 Collecting http://IP_Address/PythonRepositories/Windows/repo.anaconda.com/pkgs/main/win-64/selenium-3.9.0-py36_0.tar.bz2
2021-01-15T09:32:20,076   Created temporary directory: C:\Users\Administrator\AppData\Local\Temp\1\pip-req-build-57fyjwkw
2021-01-15T09:32:20,076   Created temporary directory: C:\Users\Administrator\AppData\Local\Temp\1\pip-unpack-i3ywdpyn
2021-01-15T09:32:20,092   Downloading http://IP_Address/PythonRepositories/Windows/repo.anaconda.com/pkgs/main/win-64/selenium-3.9.0-py36_0.tar.bz2 (876 kB)
2021-01-15T09:32:20,638   Added http://IP_Address/PythonRepositories/Windows/repo.anaconda.com/pkgs/main/win-64/selenium-3.9.0-py36_0.tar.bz2 to build tracker 'C:\\Users\\Administrator\\AppData\\Local\\Temp\\1\\pip-req-tracker-5t2tri7w'
2021-01-15T09:32:20,638     Running setup.py (path:C:\Users\Administrator\AppData\Local\Temp\1\pip-req-build-57fyjwkw\setup.py) egg_info for package from http://IP_Address/PythonRepositories/Windows/repo.anaconda.com/pkgs/main/win-64/selenium-3.9.0-py36_0.tar.bz2
2021-01-15T09:32:20,638     Created temporary directory: C:\Users\Administrator\AppData\Local\Temp\1\pip-pip-egg-info-u0ef2h8b
2021-01-15T09:32:20,638     Running command python setup.py egg_info
2021-01-15T09:32:20,888     Traceback (most recent call last):
2021-01-15T09:32:20,888       File "<string>", line 1, in <module>
2021-01-15T09:32:20,888       File "C:\Users\Administrator\AppData\Local\Programs\Python\Python38\lib\tokenize.py", line 392, in open
2021-01-15T09:32:20,888         buffer = _builtin_open(filename, 'rb')
2021-01-15T09:32:20,888     FileNotFoundError: [Errno 2] No such file or directory: 'C:\\Users\\Administrator\\AppData\\Local\\Temp\\1\\pip-req-build-57fyjwkw\\setup.py'
2021-01-15T09:32:20,904 ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
2021-01-15T09:32:20,904 Exception information:
2021-01-15T09:32:20,904 Traceback (most recent call last):
2021-01-15T09:32:20,904   File "c:\users\administrator\pycharmprojects\pythonproject\venv\lib\site-packages\pip\_internal\cli\base_command.py", line 228, in _main
2021-01-15T09:32:20,904     status = self.run(options, args)
2021-01-15T09:32:20,904   File "c:\users\administrator\pycharmprojects\pythonproject\venv\lib\site-packages\pip\_internal\cli\req_command.py", line 182, in wrapper
2021-01-15T09:32:20,904     return func(self, options, args)
2021-01-15T09:32:20,904   File "c:\users\administrator\pycharmprojects\pythonproject\venv\lib\site-packages\pip\_internal\commands\install.py", line 323, in run
2021-01-15T09:32:20,904     requirement_set = resolver.resolve(
2021-01-15T09:32:20,904   File "c:\users\administrator\pycharmprojects\pythonproject\venv\lib\site-packages\pip\_internal\resolution\legacy\resolver.py", line 183, in resolve
2021-01-15T09:32:20,904     discovered_reqs.extend(self._resolve_one(requirement_set, req))
2021-01-15T09:32:20,904   File "c:\users\administrator\pycharmprojects\pythonproject\venv\lib\site-packages\pip\_internal\resolution\legacy\resolver.py", line 388, in _resolve_one
2021-01-15T09:32:20,904     abstract_dist = self._get_abstract_dist_for(req_to_install)
2021-01-15T09:32:20,904   File "c:\users\administrator\pycharmprojects\pythonproject\venv\lib\site-packages\pip\_internal\resolution\legacy\resolver.py", line 340, in _get_abstract_dist_for
2021-01-15T09:32:20,904     abstract_dist = self.preparer.prepare_linked_requirement(req)
2021-01-15T09:32:20,904   File "c:\users\administrator\pycharmprojects\pythonproject\venv\lib\site-packages\pip\_internal\operations\prepare.py", line 482, in prepare_linked_requirement
2021-01-15T09:32:20,904     abstract_dist = _get_prepared_distribution(
2021-01-15T09:32:20,904   File "c:\users\administrator\pycharmprojects\pythonproject\venv\lib\site-packages\pip\_internal\operations\prepare.py", line 91, in _get_prepared_distribution
2021-01-15T09:32:20,904     abstract_dist.prepare_distribution_metadata(finder, build_isolation)
2021-01-15T09:32:20,904   File "c:\users\administrator\pycharmprojects\pythonproject\venv\lib\site-packages\pip\_internal\distributions\sdist.py", line 40, in prepare_distribution_metadata
2021-01-15T09:32:20,904     self.req.prepare_metadata()
2021-01-15T09:32:20,904   File "c:\users\administrator\pycharmprojects\pythonproject\venv\lib\site-packages\pip\_internal\req\req_install.py", line 555, in prepare_metadata
2021-01-15T09:32:20,904     self.metadata_directory = self._generate_metadata()
2021-01-15T09:32:20,904   File "c:\users\administrator\pycharmprojects\pythonproject\venv\lib\site-packages\pip\_internal\req\req_install.py", line 530, in _generate_metadata
2021-01-15T09:32:20,904     return generate_metadata_legacy(
2021-01-15T09:32:20,904   File "c:\users\administrator\pycharmprojects\pythonproject\venv\lib\site-packages\pip\_internal\operations\build\metadata_legacy.py", line 70, in generate_metadata
2021-01-15T09:32:20,904     call_subprocess(
2021-01-15T09:32:20,904   File "c:\users\administrator\pycharmprojects\pythonproject\venv\lib\site-packages\pip\_internal\utils\subprocess.py", line 242, in call_subprocess
2021-01-15T09:32:20,904     raise InstallationError(exc_msg)
2021-01-15T09:32:20,904 pip._internal.exceptions.InstallationError: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
2021-01-15T09:32:20,920 1 location(s) to search for versions of pip:
2021-01-15T09:32:20,920 * https://pypi.org/simple/pip/
2021-01-15T09:32:20,920 Fetching project page and analyzing links: https://pypi.org/simple/pip/
2021-01-15T09:32:20,920 Getting page https://pypi.org/simple/pip/
2021-01-15T09:32:20,920 Found index url https://pypi.org/simple
2021-01-15T09:32:20,920 Could not fetch URL https://pypi.org/simple/pip/: connection error: HTTPSConnectionPool(host='pypi.org', port=443): Max retries exceeded with url: /simple/pip/ (Caused by NewConnectionError('<pip._vendor.urllib3.connection.HTTPSConnection object at 0x00000048095AD5B0>: Failed to establish a new connection: [Errno 11001] getaddrinfo failed')) - skipping
2021-01-15T09:32:20,920 Given no hashes to check 0 links for project 'pip': discarding no candidates
2021-01-15T09:32:20,920 Removed http://IP_Address/PythonRepositories/Windows/repo.anaconda.com/pkgs/main/win-64/selenium-3.9.0-py36_0.tar.bz2 from build tracker 'C:\\Users\\Administrator\\AppData\\Local\\Temp\\1\\pip-req-tracker-5t2tri7w'
2021-01-15T09:32:20,920 Removed build tracker: 'C:\\Users\\Administrator\\AppData\\Local\\Temp\\1\\pip-req-tracker-5t2tri7w'

标签: pythonpippycharmrepository

解决方案


您必须提供包的完整路径(或整个 url,如果它位于服务器上):

$ pip install http://IP_Address/PythonRepositories/Windows/repo.anaconda.com/pkgs/main/win-64/Selenium-3.9.0-py36_0.tar.bz2

代替

$ pip install http://IP_Address/PythonRepositories/Windows/repo.anaconda.com/pkgs/main/win-64/ Selenium

你得到的错误是由 pip 试图解压目录而不是存档引起的(至少我是这么认为的)


推荐阅读