class PlayStoreParser

Public Instance Methods

parse_play_store(package) click to toggle source
# File lib/android_app_index.rb, line 38
def parse_play_store(package)
  page = get_page package

  {
    icon_url: get_icon_url(page),
    name: get_name(page),
    package: package,
  }
end

Private Instance Methods

get_icon_url(page) click to toggle source
# File lib/android_app_index.rb, line 21
        def get_icon_url(page)
  images = page.search('img.cover-image').map do |node|
    { alt: node.attribute('alt').value, url: "https:#{node.attribute('src').value}" }
  end

  images.select { |image| image[:alt] == 'Cover art' }[0][:url]
end
get_name(page) click to toggle source
# File lib/android_app_index.rb, line 34
        def get_name(page)
  replace_dash page.search('div.id-app-title').first.inner_html
end
get_page(package) click to toggle source
# File lib/android_app_index.rb, line 17
        def get_page(package)
  Nokogiri::HTML(open("https://play.google.com/store/apps/details?id=#{package}&hl=en"))
end
replace_dash(name) click to toggle source

TODO: Figure out how to properly handle charset.

# File lib/android_app_index.rb, line 30
        def replace_dash(name)
  name.gsub('–', '-')
end