Class: AnswersEngine::CLI::Parser

Inherits:
Thor
  • Object
show all
Defined in:
lib/answersengine/cli/parser.rb

Instance Method Summary collapse

Instance Method Details

#exec_parse(scraper_name, parser_file, *gids) ⇒ Object



43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
# File 'lib/answersengine/cli/parser.rb', line 43

def exec_parse(scraper_name, parser_file, *gids)
  gids.each do |gid|
    begin
      puts "Parsing #{gid}"

      if options[:job]
        job_id = options[:job]
      else
        job = Client::ScraperJob.new(options).find(scraper_name)
        job_id = job['id']
      end

      puts AnswersEngine::Scraper::Parser.exec_parser_page(parser_file, gid, job_id, true)
    rescue => e
      puts e
    end
  end
end

#try_parse(scraper_name, parser_file, gid) ⇒ Object



13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# File 'lib/answersengine/cli/parser.rb', line 13

def try_parse(scraper_name, parser_file, gid)
  begin 
    
      if options[:job]
        job_id = options[:job]
      elsif options[:global] 
        job_id = nil
      else
        job = Client::ScraperJob.new(options).find(scraper_name)
        job_id = job['id']
      end


    vars = JSON.parse(options[:vars]) if options[:vars]
    puts AnswersEngine::Scraper::Parser.exec_parser_page(parser_file, gid, job_id, false, vars)

    rescue JSON::ParserError
    if options[:vars]
      puts "Error: #{options[:vars]} on vars is not a valid JSON"
    end
  end
end