class AParserClient::API

Attributes

api_url[RW]

Public Class Methods

new(api_url, api_password) click to toggle source
# File lib/a_parser_client/api.rb, line 11
def initialize(api_url, api_password)
  raise 'Bad API URL provided.' unless api_url =~ URI::DEFAULT_PARSER.make_regexp

  @api_url = api_url
  @api_password = api_password
  @alive = alive?
end

Public Instance Methods

add_task(task_type = 'text', queries_array = [], queries_file = nil, config, preset, parsers, result_file_name) click to toggle source
# File lib/a_parser_client/api.rb, line 67
def add_task(task_type = 'text', queries_array = [], queries_file = nil, config, preset, parsers, result_file_name)
  request = {
    password: @api_password,
    action: 'addTask',
    data: {
      queriesFrom: task_type,
      queries: (task_type == 'text' ? queries_array : queries_file),
      configPreset: config,
      preset: preset,
      parsers: parsers,
      resultsFileName: result_file_name
    }
  }
  do_it request
end
alive?() click to toggle source

updates alive status

# File lib/a_parser_client/api.rb, line 28
def alive?
  @alive = ping ? true : false
end
bulk_request(queries, parser, preset, config_preset, threads, raw_results, need_data, options) click to toggle source
# File lib/a_parser_client/api.rb, line 98
def bulk_request(queries, parser, preset, config_preset, threads, raw_results, need_data, options)
  request = {
    password: @api_password,
    action: 'bulkRequest',
    data: {
      queries: queries,
      parser: parser,
      configPreset: config_preset,
      preset: preset,
      threads: threads,
      rawResults: raw_results,
      needData: need_data,
      options: options
    }
  }
  do_it request
end
change_task_status(task_id, to_status) click to toggle source
# File lib/a_parser_client/api.rb, line 116
def change_task_status(task_id, to_status)
  request = {
    password: @api_password,
    action: 'changeTaskStatus',
    data: {
      taskUid: task_id,
      toStatus: to_status
    }
  }
  do_it request
end
delete_task_results_file(task_id) click to toggle source
# File lib/a_parser_client/api.rb, line 163
def delete_task_results_file(task_id)
  request = {
    password: @api_password,
    action: 'deleteTaskResultsFile',
    data: { taskUid: task_id }
  }
  do_it request
end
get_accounts_count() click to toggle source
# File lib/a_parser_client/api.rb, line 128
def get_accounts_count
  request = {
    password: @api_password,
    action: 'getAccountsCount',
    data: {}
  }
  do_it request
end
get_info() click to toggle source
# File lib/a_parser_client/api.rb, line 59
def get_info
  request = {
    password: @api_password,
    action: 'info',
  }
  do_it request
end
get_parser_info(parser_name) click to toggle source
# File lib/a_parser_client/api.rb, line 184
def get_parser_info(parser_name)
  request = {
    password: @api_password,
    action: 'getParserInfo',
    data: {
      parser: parser_name
    }
  }
  do_it request
end
get_parser_preset(parser_name, preset_name) click to toggle source
# File lib/a_parser_client/api.rb, line 195
def get_parser_preset(parser_name, preset_name)
  request = {
    password: @api_password,
    action: 'getParserInfo',
    data: {
      parser: parser_name,
      reset: preset_name
    }
  }
  do_it request
end
get_proxies() click to toggle source
# File lib/a_parser_client/api.rb, line 137
def get_proxies
  request = {
    password: @api_password,
    action: 'getProxies'
  }
  do_it request
end
get_task_conf(task_id) click to toggle source
# File lib/a_parser_client/api.rb, line 50
def get_task_conf(task_id)
  request = {
    password: @api_password,
    action: 'getTaskConf',
    data: { taskUid: task_id }
  }
  do_it request
end
get_task_results_file(task_id) click to toggle source
# File lib/a_parser_client/api.rb, line 154
def get_task_results_file(task_id)
  request = {
    password: @api_password,
    action: 'getTaskResultsFile',
    data: { taskUid: task_id }
  }
  do_it request
end
get_task_state(task_id) click to toggle source
# File lib/a_parser_client/api.rb, line 41
def get_task_state(task_id)
  request = {
    password: @api_password,
    action: 'getTaskState',
    data: { taskUid: task_id }
  }
  do_it request
end
get_tasks_list(completed = false) click to toggle source
# File lib/a_parser_client/api.rb, line 32
def get_tasks_list(completed = false)
  request = {
    password: @api_password,
    action: 'getTasksList',
    data: { completed: completed ? 1 : 0 }
  }
  do_it request
end
move_task(task_id, direction) click to toggle source
# File lib/a_parser_client/api.rb, line 172
def move_task(task_id, direction)
  request = {
    password: @api_password,
    action: 'moveTask',
    data: {
      taskUid: task_id,
      toStatus: direction
    }
  }
  do_it request
end
one_request(query, parser, preset = 'default', config_preset = 'default', options = []) click to toggle source
# File lib/a_parser_client/api.rb, line 83
def one_request(query, parser, preset = 'default', config_preset = 'default', options = [])
  request = {
    password: @api_password,
    action: 'oneRequest',
    data: {
      query: query,
      parser: parser,
      configPreset: config_preset,
      preset: preset,
      options: options
    }
  }
  do_it request
end
ping() click to toggle source
# File lib/a_parser_client/api.rb, line 19
def ping
  request = {
    password: @api_password,
    action: 'ping'
  }
  do_it request
end
update!() click to toggle source
# File lib/a_parser_client/api.rb, line 145
def update!
  request = {
    password: @api_password,
    action: 'update',
    data: {}
  }
  do_it request
end