由于环境错误,无法安装程序包:[Errno 2]没有这样的文件或目录\\元数据

2024-03-28 11:15:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我对编码比较陌生,所以我还没有运行虚拟环境。相反,我只是将pip包直接下载到我的pc上,在atom中运行python 3.7。

前几天当我试图使用pip来安装像so-m pip install --user scrapy这样的废弃软件包时

我得到这个错误:Could not install packages due to an EnvironmentError: [Errno 2] No such file or directory: 'c:\\users\\adrian\\appdata\\roaming\\python\\python37\\site-packages\\pip-19.0.1.dist-info\\METADATA'

我看到的关于相关错误的大多数其他答案都是有人使用conda安装了我认为的某种类型的修复程序吗?当我试图使用conda执行其中一个修复时,我收到了CondaHTTPError:SSLError(MaxRetryError('HTTPSConnectionPool(host=\'repo.anaconda.com\', port=443): Max retries exceeded with url: /pkgs/free/noarch/repodata.json.bz2 (Caused by SSLError("Can\'t connect to HTTPS URL because the SSL module is not available.

任何方向都将不胜感激:-)


Tags: installpipto编码sopackages错误虚拟环境
3条回答

我在尝试安装Jupyter时遇到了同样的错误,用户配置文件下的路径以\site packages\pip-19.0.1.dist info\METADATA结尾

当我检查那个位置时,它不包含元数据,但是另一个名为pip-19.0.1.dist-info的文件夹中有几个文件,其中包括元数据

我将这些文件移回目录,使其与错误中列出的路径匹配,然后升级pip(在管理员帐户下)

pip3安装--升级pip

它起作用并更新了pip

然后我可以运行Jupyter安装,没有错误

所以上述所谓的解决方案对我来说没有多大意义。。分拣机路径??不管怎样,对我有用的是这个。

我的错误:

Could not install packages due to an EnvironmentError: [Errno 2] No such file or directory: 'c:\\users\\MYUSERNAME\\appdata\\roaming\\python\\python37\\site-packages\\pip-19.0.1.dist-info\\METADATA'

所以我去了目录:

c:\\users\\MYUSERNAME\\appdata\\roaming\\python\\python37\\site-packages\\pip-19.0.1.dist-info\\   

实际上没有元数据文件。但是有一个名为19.0.1.dist-info的文件夹,其中包含元数据文件。把它移到上面的目录,然后砰!问题解决了。

TL;博士:

问题:安装路径过长

解决方案:在路径较短的文件夹(例如C:/my_py_packages/some_package)中安装所需的python包(在我的例子中是tensorflow),或者将注册表值HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem@LongPathsEnabled设置为1as mentioned here

原始答案: 我在尝试安装tensorflow库时遇到了这种错误。我的错误如下:

Could not install packages due to an EnvironmentError: [Errno 2] No such file or directory: 'c:\moj ifajlovi\faks\11master\1semestar\siap-sistemizaistrazivanjeianalizupodataka_(datamining)\projek at\rad\venvs\siap_venv\Lib\site-packages\tensorflow_estimator\python\estimator\canned\line ar_optimizer\python\utils\__pycache__\sharded_mutable_dense_hashtable.cpython-37.pyc'

因此,__pycache__目录中没有sharded_mutable_dense_hashtable.cpython-37.pyc文件。但是,sharded_mutable_dense_hashtable.cpython-37.pyc文件在utils目录中(这是__pycache__目录的父目录)。

这就是为什么我试图手动复制sharded_mutable_dense_hashtable.cpython-37.pyc目录中的__pycache__文件。当我尝试这样做时,我有一个复制错误,它指出路径太长,所以无法将文件放入目录中。

因此,解决方案:

在路径较短的文件夹(例如C:/my_py_packages/some_package)中安装所需的python包(在我的例子中是tensorflow),或者将注册表值HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem@LongPathsEnabled设置为1as mentioned here

相关问题 更多 >