mirror of
https://git.hackliberty.org/Awesome-Mirrors/WebHackersWeapons.git
synced 2024-09-12 01:18:59 -06:00
47 lines
1.0 KiB
Ruby
47 lines
1.0 KiB
Ruby
require 'json'
|
|
require 'yaml'
|
|
require "uri"
|
|
|
|
def get_os install
|
|
lst = []
|
|
if install['Linux'].length > 1
|
|
lst.push 'linux'
|
|
end
|
|
if install['MacOS'].length > 1
|
|
lst.push 'macos'
|
|
end
|
|
if install['Windows'].length > 1
|
|
lst.push 'windows'
|
|
end
|
|
return lst
|
|
end
|
|
|
|
def get_urls str
|
|
return URI.extract(str).uniq
|
|
end
|
|
|
|
file = File.read('./data.json')
|
|
data_hash = JSON.parse(file)
|
|
|
|
data_hash.each do | name, obj |
|
|
filename = name.gsub(' ','_')+".yaml"
|
|
# Make object
|
|
new_obj = {}
|
|
new_obj['name'] = name
|
|
new_obj['description'] = obj['Description']
|
|
new_obj['urls'] = get_urls obj['Data']
|
|
new_obj['category'] = 'tool'
|
|
new_obj['types'] = []
|
|
if obj['Install'] != nil
|
|
new_obj['os'] = get_os(obj['Install'])
|
|
end
|
|
new_obj['lang'] = [] # parse DATA
|
|
new_obj['tags'] = []
|
|
|
|
# Convert to YAML
|
|
yaml_data = YAML.dump(new_obj)
|
|
|
|
# Save yaml file
|
|
puts filename
|
|
#File.write("./data/#{filename}", yaml_data)
|
|
end |