

def fetch_commits(base_url, start_date, end_date):
    jsonstr = ''
    i = 1
    while True:
        resp = requests.get(base_url, params={
            'since': start_date,
            'until': end_date,
            'page': i,
            'per_page': 100,
        })
        jsonchunk = resp.content.decode('utf-8')
        if (len(jsonchunk) <= 2):
            break
        i += 1
        jsonchunk = jsonchunk.replace('},{', '}\\n{')
        jsonchunk = jsonchunk[1:(- 1)]
        jsonstr = ((jsonstr + '\\n') + jsonchunk)
    jsonarr = jsonstr.split('\\n')[1:]
    shas = []
    for jsonstring in jsonarr:
        jsonobj = json.loads(jsonstring)
        shas.append(jsonobj['sha'])
    return shas

dataset/ETHPy150Open CenterForOpenScience/scrapi/scrapi/harvesters/elife.py fetch_commits/original