我有一个 RoR 应用程序,它给定一组N个要解析的 URL,将为给定的 PhantomJS(实际上是一个 CasperJS)脚本执行N个 shell 调用。
所以,
现在我有这样的事情:
urls_to_parse = ['first.html', 'second.html',...]
urls_to_parse.each do |url|
parse_results = \`casperjs parse_urls.js '#{url}'\`
end
我以前从来没有这样做过。从 RoR/Ruby 应用程序启动 shell 脚本,所以我想知道这是否是一个好方法以及我有什么替代方法。那么,为什么我将 PhantomJS 与 RoR 结合使用呢?
我基本上有一个 API(RoR 应用程序),它不断接收需要解析的 url。它们需要以无头浏览器的方式进行解析。该页面实际上需要呈现(这就是我不使用 Nokogiri 或任何其他 HTML 解析器的原因)。
我担心将其提高到生产性能上,在继续之前,我想知道我是否正确执行此操作,或者我可以以更好的方式做到这一点。