我的R函数未提供预期的输出

时间:2018-10-04 18:18:23

标签: ruby-on-rails r rvest rcrawler

我有一个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。

任何帮助将不胜感激。 TIA

0 个答案:

没有答案