首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何自动更新pywin32?

如何自动更新pywin32?
EN

Stack Overflow用户
提问于 2018-03-21 04:28:00
回答 2查看 6.3K关注 0票数 4

据我所知,人们不能使用pip安装/升级pywin32,尽管pip install -U pypiwin32是一个解决办法。

pywin32现在托管在GitHub上。我对git知之甚少,但我知道它适用于二进制文件。有没有一种以编程方式升级pywin32二进制文件的方法?也就是说,假设pywin32 v221是与Pythonv.3.6(64位)一起安装的,程序应该检查GitHub上的最新版本(v223),并下载并安装pywin32-223.win-amd64-py3.6.exe。到目前为止,我只能想到一个类似网络抓取的脚本,它将安装的版本与网络上的最新版本进行比较,并采取相应的行动。我想知道是否有一个简单的解决方案。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-03-26 20:13:34

我可能遗漏了一些重要的东西,否则(几乎)问题中的每一种说法/假设似乎都是不正确的:

  1. 使用PIP安装/升级的可能
  2. GitHub主要用于托管源代码(主要是)。其中的资产是Mark的Win安装程序(因为PyWin32在PIP诞生之前很久就托管在SourceForge上了),我认为它们只是为了向后兼容性而构建的。
  3. PIP不下载PyWin32二进制文件,而是从[PyPI]:pywin32的链接下载.wheel包

为了演示上述所有内容,我创建了一个VirtualEnv,并在此基础上执行了一系列步骤:

  • Python和PIP可执行文件位置/版本
  • PIP测试(列出使用PIP的PyWin32版本)-没有输出(没有安装PyWin32 )
  • PyWin32下载和网址显示
  • PyWin32安装(稍后测试升级的旧版本)
  • PIP试验
  • PyWin32测试(使用PyWin32列出PyWin32版本)
  • PyWin32升级
  • PIP试验
  • PyWin32测试

输出

(py36x64_test) e:\Work\Dev\StackOverflow\q049398198> sopr.bat ###设置较短的提示符,以便更好地粘贴到### (或其他)页面### prompt>中,其中python py36x64_test prompt> python“导入sys;打印(sys.version)“3.6.3 (v3.6.3:2c5fed8,2007年10月3日,( 18:11:49) MSC v.1900 64 bit (AMD64)> pip -V pip 9.0.3来自AMD64(python3.6) prompt> ::pip test prompt> pip list 2>nul _ findstr pywin32 prompt> pip下载-vvv pywin32 2>nul findstr /i下载pywin32-223-cp36-cp36m-win_amd64.whl (9.0MB),从URL amd64.whl#md5=2d211288ee000b6ec5d37436bcbe8a43 (从https://pypi.python.org/simple/pywin32/下载)成功下载pywin32 prompt> PIP安装amd64.whl#md5=94a9a3782081e14973c5ae448957d530 2>nul收集器。从amd64.whl#md5=94a9a3782081e14973c5ae448957d530下载pywin32-222 -cp36m-cp36m-winamd64.whl ( 9.0MB ) 100% |################################| 9.0MB 135 -c /s安装收集的软件包: pywin32成功安装pywin32 32-222 prompt> ::python prompt> pip list 2>nul findstr PyWin32 pywin32 (222) prompt> ::PyWin32 test prompt> python-c“Importwin32api as wapi;打印(wapi.GetFileVersionInfo(wapi.__file__,\“\”)\“FileVersionLS\”>> 16)使用缓存的pywin32-223-cp36m-cp36m-win_amd64.whl找到现有安装: pywin32 222卸载pywin32 32- 222 prompt> ::python prompt> pip列表2>nul 2>nul findstr pywin32 pywin32 (223) prompt> ::pywin32 test prompt> python“将导入作为wapi;打印(wapi.GetFileVersionInfo(wapi.__file__)\“\”)\“FileVersionLS\”>> 16)“223

有关使用PIP的更多细节,请查看[SO]:如何在Windows 10上安装特定Python版本的软件包?(@CristiFati的回答)

票数 3
EN

Stack Overflow用户

发布于 2018-03-21 05:40:27

您可以使用巧克力味及其pywin32包,但是它已经过时了。

因此,作为本文中描述的的脚本解决方案(适用于其他程序,但有类似的想法)是可能的。另见这个要旨

如果您想在任何地方解压缩最新的Windows Git,并使用路径,则可以访问200+ Linux命令,包括awkhead等。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49398198

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档