Module: Wikio
- Defined in:
- lib/wikio.rb
Overview
Constant Summary collapse
- WIKIPEDIA_API_URL =
'https://en.wikipedia.org/w/api.php'- WIKIPEDIA_DOMAIN =
'https://en.wikipedia.org'
Class Method Summary collapse
Class Method Details
.get_first_link(wiki_url) ⇒ Object
27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/wikio.rb', line 27 def self.get_first_link(wiki_url) uri = URI(wiki_url) body = Net::HTTP.get(uri) doc = Nokogiri::HTML(body) subdoc = doc.xpath( "//div[contains(@class, 'mw-parser-output')]/p/a"\ " | //div[contains(@class, 'mw-parser-output')]/p/i/a" ).each do |node| href = node.attr('href') if href =~ /\A\/wiki/ return WIKIPEDIA_DOMAIN + href end end end |
.get_wiki_url(term) ⇒ Object
13 14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/wikio.rb', line 13 def self.get_wiki_url(term) params = { action: 'opensearch', search: term, limit: 1, namespace: 0, format: 'json' } uri = URI(WIKIPEDIA_API_URL) uri.query = URI.encode_www_form(params) res = Net::HTTP.get(uri) return JSON.parse(res)[3][0] end |