module Depression666

Constants

VERSION

Public Class Methods

webscraper() click to toggle source
# File lib/Depression666.rb, line 6
def self.webscraper
  url = HTTParty.get('https://www.set.or.th/set/commonslookup.do')
  response = Nokogiri::HTML(url.body)
  subpage_list = response.css('div.capital-letter').css('a')
  subpage_list.each do |subpage_listing|
    subpage_url = "https://www.set.or.th/#{subpage_listing.attributes['href'].value}"
    url2 = HTTParty.get(subpage_url)
    subpage = Nokogiri::HTML(url2.body)
    # loop through each company
    company_list = subpage.css('tr')[1..-1]
    company_list.each do |company_listing|
      print "#{company_listing.css('td')[0].text} : "
      print "#{company_listing.css('td')[1].text} : "
      # print each company asset
      company_url = "https://www.set.or.th/#{company_listing.css('a')[0].attributes['href'].value}"
      url3 = HTTParty.get(company_url)
      company_page = Nokogiri::HTML(url3.body)
      company_asset_url = "https://www.set.or.th/#{company_page.css('ul.set-nav-tabs').css('a')[1].attributes['href'].value}"
      url4 = HTTParty.get(company_asset_url)
      company_asset_page = Nokogiri::HTML(url4.body)
      asset_info = company_asset_page.css('table.table-info').css('tr')[2].css('td')  # select row
      puts asset_info[asset_info.length - 2].text
    end
  end

end