Skip to content

Instantly share code, notes, and snippets.

@imfht
Created July 2, 2017 12:55
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save imfht/6b7041316be84fb1ab59e696493082c2 to your computer and use it in GitHub Desktop.
Save imfht/6b7041316be84fb1ab59e696493082c2 to your computer and use it in GitHub Desktop.
监控Github Star变化情况
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2017/7/2 下午8:44
# @Auth : fiht
# @File : monStar.py
# @Purpose : 监控GithubStar情况
import requests
import re
import logging
import time
# create logger
def get_logger(logger_name):
logger = logging.getLogger(logger_name)
logger.setLevel(logging.DEBUG)
# create file handler
log_path = "./%s.log"%logger_name
fh = logging.FileHandler(log_path)
fh.setLevel(logging.DEBUG)
import sys
fh2 = logging.StreamHandler(stream=sys.stdout)
# create formatter
fmt = "%(asctime)-15s %(levelname)s %(filename)s %(message)s"
datefmt = "%a %d %b %Y %H:%M:%S"
formatter = logging.Formatter(fmt, datefmt)
# add handler and formatter to logger
fh.setFormatter(formatter)
fh2.setFormatter(formatter)
logger.addHandler(fh)
logger.addHandler(fh2)
return logger
url = 'https://github.com/python/cpython'
logger = get_logger('cpython')
def get_star_num():
response = requests.get(url)
logger.info(re.findall('this repository">(.*?)</a>',response.text,re.S)[1].strip())
while True:
get_star_num()
time.sleep(60) # seleep 60s
time.sleep(1) # +1s
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment