由于科研需要,需下载上千个Repo的源码,简单试了一下用GitHub下载的方法,其实很简单,唯一需要注意的是,使用requests.get下载大文件时的注意事项,可以参考这里:
https://blog.csdn.net/abcd1f2/article/details/53322934。最后,附上一点示例性的源码:
import requests
try:
download_link=repo.get_archive_link(archive_format="zipball")
print download_link
r = requests.get(download_link,headers=headers,stream=True)
f=open("ZipFilesTry/"+name.replace("/","+")+".zip",'wb')
for chunk in r.iter_content(chunk_size=512):
if chunk:
f.write(chunk)
f.flush()
f.close()
except Exception, e:
print str(e)
其中的archive_format可以参考这里:
https://developer.github.com/v3/repos/contents/#get-archive-link。就简单总结这么多。