91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python怎么監控Github項目更新并自動下載

發布時間:2021-10-19 09:30:19 來源:億速云 閱讀:148 作者:柒染 欄目:大數據

Python怎么監控Github項目更新并自動下載,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

如果你有自己在本地維護一個開源代碼庫,你就會知道檢測這些庫是否更新了是多麻煩的一件事情。隨著庫的增大,人工維護成本也就越來越大。因此便有了這個項目的想法:用Python監控Github項目是否有更新,如果有的話自動下載該更新

1.統一文件名格式

為了能夠獲取github上的項目的更新時間,我們需要調用github的一個API:

https://api.github.com/repos/用戶名/庫名

可以看到,這個API由 用戶名/庫名 組成,因此我們的文件名應該以它為標準才能方便API的調用,由于文件名不可以帶有 '/' 這樣的特殊符號,因此我們改為下劃線分割,如FastText項目調用API的時候為:

https://api.github.com/repos/facebookresearch/fastText

我們保存的文件名則為 facebookresearch_fastText.zip 
這樣,在調用API、下載文件的時候將會方便許多Python怎么監控Github項目更新并自動下載

2.獲得文件夾里所有文件名及最后修改時間

為了判斷github上的項目是否相對于本地有更新,我們需要獲得每一個本地的文件的最后修改時間,因此這是一個字典關系。代碼如下:

Python怎么監控Github項目更新并自動下載

3.與Github線上項目對比更新時間

首先我們要通過調用我們前面說提到的API 獲取github線上項目的時間。其次,一定要將其格式化為10位時間戳,因為我們第二步獲得的時間也是10位時間戳,這樣對比起來非常方便。最后返回的時候只需要返回是否需要更新即可。如圖所示。

Python怎么監控Github項目更新并自動下載

代碼如下:

Python怎么監控Github項目更新并自動下載

4.如果有需要更新的項目,讓其自動下載

由于許多github項目文件壓縮包都挺大的,我們這里采用了流式下載。如果你的項目特別多,你需要更快地進行下載,請采用批量異步下載。在我們之前的那篇文章里都有,點擊即可閱讀。

Python怎么監控Github項目更新并自動下載

5. 整套流程

我們把已經下載好的項目文件放在libs文件夾里,自動下載得到的文件放置在new文件夾中。文件結構如下:

F:\pythondict\pythondict-downloads\
│ superviser.py

├─libs
│ facebookresearch_fastText.zip
│ facebookresearch_MUSE.zip

└─new

整套代碼如下,為了防范盜取文章的家伙,原諒我這里是圖片的格式,如果需要請復制以下鏈接或點擊閱讀原文查看本部分:
https://pythondict.com/download/python-watch-github-update-download/

Python怎么監控Github項目更新并自動下載

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

梧州市| 东阳市| 勃利县| 曲阳县| 武鸣县| 醴陵市| 曲沃县| 石家庄市| 广灵县| 福泉市| 商河县| 化隆| 萨嘎县| 兴安县| 安平县| 淄博市| 龙陵县| 宝山区| 六枝特区| 吴桥县| 夏津县| 康马县| 焉耆| 福鼎市| 兴宁市| 毕节市| 泸溪县| 雅安市| 米易县| 韶山市| 五常市| 西丰县| 子长县| 平塘县| 淮南市| 泰宁县| 于田县| 太康县| 吉林市| 正阳县| 武清区|