VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > Python基础教程 >
  • 用 Python 自动监测 GitHub 项目更新

前言

文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。

作者: GitPython

PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取

note.youdao.com/notesha

项目概述

要知道Github项目的更新,提醒方式是邮箱,而大家平时都是不怎么用邮箱的!

那么,如果项目更新,我们怎么能及时的发现,并打开项目主页呢?

 

实现过程

1)获取数据

Github官方提供了详细的数据接口,并且数据是以Json字符串的方式保存的。

每一个项目的数据地址,类似于本地磁盘目录。

我们通过数据接口的url地址,就可以获取到更新时间。

import request

# 1.Github项目及API接口数据
api = 'https://api.github.com/repos/kenwoodjw/python_interview_question'
web_page = "https://github.com/kenwoodjw/python_interview_question

# 2.发送请求获取数据
all_info = requests.get(api).json()

# 3.解析想要的数据并打印
cur_update = all_info['updated_at']
print(cur_update)

2)定时监测数据变化 3)打开网页

设置一个循环,每隔10分钟获取一次update_at的数据,如果前后时间不一致,说明数据更新,并自动打开项目主页。

while True:

    all_info = requests.get(api).json()
    cur_update = all_info['updated_at']
    print(cur_update)

    # 假设第一次运行之前不知道上次的更新时间
    # 如果last_update  none会执行下面的语句把当前的时间给到上次时间
    if not last_update:
        last_update = cur_update

    # 第一次两个时间相等不会执行
    # 假设10分钟后cur_update更新那么就会自动打开网页
    # 接下来 当前时间 赋值 给上次时间
    # 开始新一轮的监测
    if last_update < cur_update:
        webbrowser.open(web_page)
        last_update = cur_update

    # 间隔 10分钟再次while循环观察新的更新时间是否发生变化
    time.sleep(600)


相关教程