моя функция R не дает ожидаемого выхода - PullRequest
0 голосов
/ 04 октября 2018

У меня есть функция R, которая должна сканировать данные с веб-сайта и сохранять их в текстовом файле.Но по некоторым причинам он работал раньше, но через несколько дней возвращает пустой файл.

Модель: `

class NDCCode < ActiveRecord::Base
  self.table_name='ndc_codes'
  def crawl
    R.eval "library(rvest)"
    R.eval "library(stringr)"
    R.eval "load('app/models/rdata/ndc_crawler.RData')"
    R.eval "ndc_crawler('#{ndc_code}')"
  end
  end

` Контроллер:

   class MedicationsController < ApplicationController
   def  ndc_crawl
   ndc = NDCCode.find_by(ndc_code: params[:ndc])
   ndc.crawl
   file_content=File.read("#{Rails.root}/product_info.txt")
   puts file_content
   render plain: file_content.gsub(/\n|\r/, '<br>')
   end
   end

Моя командная строкапоказывает

.RINRUBY.PARSE.STRING <- rinruby_get_value()
rinruby_parseable(.RINRUBY.PARSE.STRING)
rm(.RINRUBY.PARSE.STRING)
library(rvest)
print('RINRUBY.EVAL.FLAG')
.RINRUBY.PARSE.STRING <- rinruby_get_value()
rinruby_parseable(.RINRUBY.PARSE.STRING)
rm(.RINRUBY.PARSE.STRING)
library(stringr)
print('RINRUBY.EVAL.FLAG')
.RINRUBY.PARSE.STRING <- rinruby_get_value()
rinruby_parseable(.RINRUBY.PARSE.STRING)
rm(.RINRUBY.PARSE.STRING)
load('app/models/rdata/ndc_crawler.RData')
print('RINRUBY.EVAL.FLAG')
.RINRUBY.PARSE.STRING <- rinruby_get_value()
rinruby_parseable(.RINRUBY.PARSE.STRING)
rm(.RINRUBY.PARSE.STRING)
ndc_crawler('00603374621')
print('RINRUBY.EVAL.FLAG')

  Rendered text template (0.1ms)
Completed 200 OK in 678ms (Views: 17.5ms | ActiveRecord: 46.3ms)

R версия R-3.2.3, установлены пакеты rvest, stringr.Использование rinruby gem.

Любая помощь будет принята с благодарностью.ТИА

...