https://rubygems.org/api/v1/search.json只提供30颗宝石,但在我的本地机器上我可以使用所有宝石gem list --remote.
我读过http://guides.rubygems.org/rubygems-org-api/,并且不存在可以获取列表中所有宝石的API.如何通过网络获取列表?或者,有人提供这个吗?
我想要宝石的名字至少,但如果可能的话,我想得到名称和版本.
我认为gem list --remote是通过网络,所以我可以获得所有宝石列表.
mec*_*ish 12
您可以使用https://rubygems.org/latest_specs.4.8.gz哪个返回gzipped marshal dumped数组,如下所示:
[["abscss", Gem::Version.new("0.0.1"), "ruby"],
["absee", Gem::Version.new("1.0"), "ruby"],
["absentee_camper", Gem::Version.new("0.0.7"), "ruby"],
["absgit", Gem::Version.new("0.3.0"), "ruby"],
["absinthe", Gem::Version.new("0.0.3"), "ruby"],
["absolute", Gem::Version.new("0.0.5"), "ruby"],
["AbsoluteRenamer", Gem::Version.new("1.1.2"), "ruby"],
["AbsoluteRenamer-date", Gem::Version.new("0.1.0"), "ruby"]]
Run Code Online (Sandbox Code Playgroud)
但如果你在Ruby中,我强烈建议使用gem fetcher:
require 'rubygems/spec_fetcher'
fetcher = Gem::SpecFetcher.fetcher
tuples = fetcher.detect(:released) { true }
Run Code Online (Sandbox Code Playgroud)
tuples现在是一系列的元组[Gem::NameTuple, Gem::Remote].你可以用这个做些什么的例子:
tuples[1337][0].name # => GraphvizR
tuples[1337][0].version.to_s # => "0.1.0"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
135 次 |
| 最近记录: |