1

重複の可能性:
Ruby を使用して HTTP 経由でバイナリ ファイルをダウンロードするにはどうすればよいですか?

pdf_linksMechanize gem によって収集された PDF ファイルへのリンクを含むという配列があります。

http://site/file1.pdf
http://site/file2.pdf
http://site/file3.pdf
http://site/file4.pdf
http://site/file5.pdf
http://site/file6.pdf
http://site/file7.pdf

すべての PDF ファイルを自分のディレクトリに保存する必要があります。

Rubyでそれを行う最良の方法は何ですか?

*nix 文字列を使用して実行しようとしましたが、エラーが発生しました:

pdf_links.each do |d|
    システム %x{ wget #{d} }
終わり
4

2 に答える 2

3

それを保存するための保存メソッドがmechanizeにあります

FileUtils を使用して、WWW::Mechanize::File をディスクに保存します。

http://mechanize.rubyforge.org/Mechanize/File.html#method-i-save

または、ruby lib 'open-uri' を使用できます

 require 'open-uri'
 pdf_links.each do |link|
  File.open(file_path_to_store, 'wb') {|f| f.write(open(link).read)}
 end
于 2012-07-28T14:12:21.773 に答える
2

Mechanize でできること:

agent.get(d).save
于 2012-07-28T14:06:25.333 に答える