我想抽样随机GitHub公共存储库,逐个下载它们用于统计目的 . 我尝试使用以下Powershell代码:
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
$id = Get-Random -Minimum 0 -Maximum 500
$jsonContent = Invoke-WebRequest "http://api.github.com/repositories?since=$id" | ConvertFrom-Json
我确实得到了一个公共存储库列表,但我无法限制它们的数量 . 我尝试了 ?page=1&per_page=1
,但它没有用 . 我只是想将 clone_url
解析为 git clone
.
有任何想法吗?其他从github下载随机回购的解决方案也受到欢迎 .
1 回答
你很亲密这应该工作:
如果要通过ssh克隆,请务必将
git_url
更改为ssh_url
.解释
对http://api.github.com/repositories?since=x allways的调用代表相同的最后100个回购,因此无需随机化数字 .
第一次调用的列表为您提供了100 Repos的api URL . 因此,随机检查其中一个并使用另一个WebRequest克隆该URL以克隆到存储库的api URL .