class NewsApi
Api Reference: newsapi.org/#apiArticles
Constants
- API_TOKEN
- Article
- SOURCES
- Source
Public Class Methods
articles()
click to toggle source
# File lib/chid/news_api.rb, line 33 def self.articles sources = self.sources() sources.collect do |s| request = ::HTTP.get("https://newsapi.org/v1/articles?source=#{s.id}&apiKey=#{API_TOKEN}") json_news = JSON.parse request json_news[ 'articles' ].collect do |n| published_at = n[ 'publishedAt' ].nil? ? nil : Date.parse(n[ 'publishedAt' ]) Article.new(json_news[ 'source' ], n[ 'author' ], n[ 'title' ], n[ 'description' ], n[ 'url' ], published_at) end end.flatten end
sources()
click to toggle source
# File lib/chid/news_api.rb, line 48 def self.sources() #request = HTTP.get("https://newsapi.org/v1/sources?language=en") #json_sources = JSON.parse request #json_sources[ 'sources' ].collect do |s| # Source.new(s[ 'id' ], s[ 'name' ], s[ 'description' ], s[ 'category' ]) #end SOURCES.collect do |s| Source.new(s) end end