Python 从Github下载最新版本,解压缩到文件夹并覆盖内容?

Python 从Github下载最新版本,解压缩到文件夹并覆盖内容?,python,python-3.x,Python,Python 3.x,我有一个节点项目,它作为发行版捆绑并添加到Github中。目前,它通过API检查我的Github的新版本,并允许用户下载。然后,用户必须停止节点服务器,将release.zip解压到文件夹中,并覆盖所有内容以更新项目 我要做的是编写一个Python脚本,通过生成一个新进程,我可以在节点中执行该脚本。然后,这将使用PM2杀死节点服务器,然后Python脚本将检查Github API,获取下载url,下载它,将内容解压缩到当前文件夹,删除zip,然后再次启动节点服务器 不过,我正在努力检查Githu

我有一个节点项目,它作为发行版捆绑并添加到Github中。目前,它通过API检查我的Github的新版本,并允许用户下载。然后,用户必须停止节点服务器,将release.zip解压到文件夹中,并覆盖所有内容以更新项目

我要做的是编写一个Python脚本,通过生成一个新进程,我可以在节点中执行该脚本。然后,这将使用PM2杀死节点服务器,然后Python脚本将检查Github API,获取下载url,下载它,将内容解压缩到当前文件夹,删除zip,然后再次启动节点服务器


不过,我正在努力检查Github API并下载最新版本文件。谁能给我指出正确的方向吗?我已经了解到,Python中不应使用
wget
,而应使用
urlopen

如果您想从web服务器获取数据,则有两个主要库:

就我个人而言,我更喜欢请求。它们都有很好的文档

对于请求,获取JSON数据非常简单:

r = requests.get("example.com")
r = r.json()

您可以轻松添加标题和其他信息,但请记住,虽然它支持HTTP,但不支持HTTPS。

您需要更好地规划您的工作流和数据流。你可以用文字或图片来表达。如果您能够以Word的列表格式一步一步地用Word清楚完整地表达您的问题,那么请将其转换为伪代码。Python之所以伟大,是因为您几乎可以立即从一个好的书面描述,到伪代码,再到一个有效的实现。然后至少你有了一些有效的东西,你可以优化性能,简化功能或可用性。这是将问题转化为解决方案的过程

当你提出这样的问题时,你需要展示你目前的想法,你已经尝试过的东西,最好是你的代码还不能工作,或者按照你需要的方式工作。如果你问的问题只是一个模糊的描述,一个明显是在家庭作业中呼救的问题(你的问题不是这样),或者是一个缪斯或是一个模糊的问题,甚至没有试图找到解决方案,人们可能会投你的票,并给你负面的声誉分数,因为它不会以任何方式回馈社区


您是否有任何代码或详细的伪代码步骤来检查GitHub API和检查您尝试更新的文件的“最新版本”?

请显示您迄今为止所做的尝试