安装安装程序工具时出现错误"ValueError: Zip does not support timestamps before 1980" scm Pypi



描述错误

我在一台客户端机器上工作,无法访问外部服务器。因此,我必须从Python网站下载包并提取zip文件,并且必须通过在命令提示符中传递命令python setup.py install将包安装在我的机器中。前两个包(Seleniumurllib3(在我的机器中运行良好,设置也很好。

我已尝试安装Pytest Pypi,但这需要setuptools-scm。所以我下载了setuptools-scm软件包,并尝试安装它,但我得到了一个错误ValueError: Zip does not support timestamps before 1980

预期行为

Setuptools-scm应安装

复制

  • 从下载setuptools-scm软件包https://pypi.org/project/setuptools-scm/
  • 提取zip文件并通过运行python setup.py install安装setuptools-scm
  • 观察错误ValueError: Zip does not support timestamps before 1980

命令提示符响应

File "C:Program FilesPython 3.8libzipfile.py", line 360, in __init__
raise ValueError('ZIP does not support timestamps before 1980')
ValueError: ZIP does not support timestamps before 1980

在我的案例中,这是因为文件上的最后一次修改日期是1970年1月1日。我只需触摸所有文件,即可将上次修改的文件更新到今天,一切正常。

$ touch `find . -type f`

我在python3.9中得到了这个错误。我可以通过在Lib文件夹(..PythonPython39Lib(内的zipfile.py中将strict_timestamps的所有实例从True更改为False(即strict_timestamps=False(来解决此问题。参考

我也收到了这个错误。这是因为我使用";WinRAR";为了解压缩包(*.tar.gz(,很多文件上都没有日期。然后我使用cmd工具和命令tar -zxvf *.tar.gz来解压缩这个包,问题就解决了。

我注意到src/setuptools_scm/中的文件没有创建或修改日期的时间戳。我只是在文本编辑器中打开这些文件,并在没有更改的情况下保存它们以建立时间戳。

之后,>python/setup.py安装工作正常。

相关内容

最新更新