Class: Relaton::Nist::Scraper
- Inherits:
-
Object
- Object
- Relaton::Nist::Scraper
- Extended by:
- Core::DateParser
- Defined in:
- lib/relaton/nist/scraper.rb
Constant Summary collapse
- DOMAIN =
"https://csrc.nist.gov".freeze
Class Method Summary collapse
- .fetch_gh(hit_data) ⇒ Object
- .parse_json(hit_data) ⇒ Object
-
.parse_page(hit_data) ⇒ Relaton::Nist::ItemData
Parse page.
Class Method Details
.fetch_gh(hit_data) ⇒ Object
21 22 23 24 25 |
# File 'lib/relaton/nist/scraper.rb', line 21 def fetch_gh(hit_data) uri = URI.parse "#{HitCollection::GHNISTDATA}#{hit_data[:path]}" yaml = Net::HTTP.get(uri) Item.from_yaml(yaml) end |
.parse_json(hit_data) ⇒ Object
27 28 29 30 31 32 33 34 |
# File 'lib/relaton/nist/scraper.rb', line 27 def parse_json(hit_data) item_data = from_json hit_data titles = fetch_titles(hit_data) item_data[:fetched] = ::Date.today.to_s item_data[:type] = "standard" item_data[:title] = titles ItemData.new(**item_data) end |
.parse_page(hit_data) ⇒ Relaton::Nist::ItemData
Parse page.
17 18 19 |
# File 'lib/relaton/nist/scraper.rb', line 17 def parse_page(hit_data) hit_data[:path] ? fetch_gh(hit_data) : parse_json(hit_data) end |