class AdopsReportScrapper::AdsupplybuyerClient
Public Instance Methods
before_quit_with_error()
click to toggle source
# File lib/adops_report_scrapper/adsupplybuyer_client.rb, line 15 def before_quit_with_error end
date_supported?(date = nil)
click to toggle source
# File lib/adops_report_scrapper/adsupplybuyer_client.rb, line 6 def date_supported?(date = nil) _date = date || @date return true if _date < (Date.today + 1) false end
init_client()
click to toggle source
# File lib/adops_report_scrapper/adsupplybuyer_client.rb, line 12 def init_client end
Private Instance Methods
scrap()
click to toggle source
# File lib/adops_report_scrapper/adsupplybuyer_client.rb, line 20 def scrap if @options[:hourly] scrap_hourly else scrap_daily end end
scrap_daily()
click to toggle source
# File lib/adops_report_scrapper/adsupplybuyer_client.rb, line 28 def scrap_daily date_str = @date.strftime('%-m/%-d/%Y') time_zone_id = 'Eastern Standard Time' response = RestClient.post "https://ui.adsupply.com/PublicPortal/Advertiser/#{@login}/Report/Export", SqlCommandId: '', ExportToExcel: 'False', IsOLAP: 'False', DateFilter: date_str, TimeZoneId: time_zone_id, Grouping: '1', 'DimAdvertiser.Value': "#{@login}~", 'DimAdvertiser.IsActive': 'True', 'DimMedia.Value': '', 'DimMedia.IsActive': 'True', ApiKey: @secret data = JSON.parse response unless data[0] @data = [] return end header = data[0].keys @data = [header] @data += data.map do |datum| header.map { |key| datum[key] } end end
scrap_hourly()
click to toggle source
# File lib/adops_report_scrapper/adsupplybuyer_client.rb, line 46 def scrap_hourly date_str = @date.strftime('%-m/%-d/%Y') time_zone_id = 'Eastern Standard Time' response = RestClient.post "https://ui.adsupply.com/PublicPortal/Advertiser/#{@login}/Report/Export", SqlCommandId: '', ExportToExcel: 'False', IsOLAP: 'False', DateFilter: date_str, TimeZoneId: time_zone_id, Grouping: '0', ApiKey: @secret data = JSON.parse response unless data[0] @data = [] return end header = data[0].keys @data = [header] @data += data.map do |datum| header.map { |key| datum[key] } end end