Ruby on rails 从url打开文件,路径包含通配符
我可以打开带有通配符的本地文件,如下所示:Ruby on rails 从url打开文件,路径包含通配符,ruby-on-rails,ruby,Ruby On Rails,Ruby,我可以打开带有通配符的本地文件,如下所示: require 'nokogiri' require 'open-uri' Dir.glob(Rails.root.join("public/system/xmls/**/original/*.xml")).each do |path| File.open(path) do |f| doc = Nokogiri::XML(f) #etc 但这当然行不通: Dir.glob("https://s3-eu-we
require 'nokogiri'
require 'open-uri'
Dir.glob(Rails.root.join("public/system/xmls/**/original/*.xml")).each do |path|
File.open(path) do |f|
doc = Nokogiri::XML(f)
#etc
但这当然行不通:
Dir.glob("https://s3-eu-west-1.amazonaws.com/foldername/xmlimports/**/*.xml").each do |path| #etc
URL不提供列出目录内容的标准方法,因此不可能编写适用于任何URL的glob处理程序。对于这种特殊情况,您必须使用自己的glob处理程序,或者依赖类似于
wget
的东西来镜像整个目录并在本地对文件进行glob(但是如果文件很大,并且/或者您只需要处理其中的几个文件,那么这将是一种奇怪的方法)。Harrumph。尽管如此,还是谢谢你,让我省了几个小时去尝试一项不可能完成的任务。我想我会重新考虑我的方法,并传入最近上传的文件的一个变量。