我想知道这是否曾经出现过?
我有一个从我们的 GitHub Enterprise 实例下载大量信息的应用程序(目前不使用 github3.py,但我正在考虑将其转换为使用 github3.py)。基本上,它会抓取 189 个 repos,然后对于每个 repo,它会拉取分支、标签和提交。这显然很慢,因为它必须串行执行很多 HTTP 请求。
我想知道是否可以让 github3.py 返回grequest对象,以便我可以让 grequests 并行执行请求?或者,另一种选择是通过在 github3.py 中设置“并发级别”并让它处理并行请求来包装和隐藏 grequest。或者也许是一个上下文管理器:
with github3.parallel():
tags = pull_tags(git_repo)
branches = pull_branches(git_repo)
我认识到,想出一个可以很好地与并行化配合使用的 API 可能是相当具有挑战性的,因为它是一个完全不同的范式。这就是为什么我不想用这个来混淆问题跟踪器。