2016-06-18 10 views
0

Mechanize downloadメソッドを使用してFTP接続でファイルをダウンロードしようとしています。Mechanizeを使用してFTP経由でファイルをダウンロードする方法

私が使用してこれを呼び出す:

agent = Mechanize.new 

file = '/census_tracts_2014/file1.zip' 
url = 'ftp://ftp2.census.gov/geo/tiger/TIGER2014/TRACT/tl_2014_01_tract.zip' 

agent.download(url,file) 

私は次のエラーを取得する:

/Users/danish/.rbenv/versions/2.2.4/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require': cannot load such file -- httpclient (LoadError) 
    from /Users/danish/.rbenv/versions/2.2.4/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require' 
    from test.rb:24:in `<main>' 

私はそれが私がエラーの原因となっていると思いますftp://ftp2.census.govftp2を認識しないので、それが失敗したと思います。

+0

「[mcve]」とお読みください。あなたが書いたコードについて質問するとき、それが実行可能であれば本当に役立ちます。 "httpclient"を読み込もうとしているのにコードにrequireが表示されていないこと、またはMechanizeが表示されていないことを示すので、エラーはコードと一致しません。 FTPファイルをダウンロードするためにMechanizeを使う必要はありませんが、OpenURIもそれをうまくやることができます。 http://stackoverflow.com/a/5025280/128421 –

答えて

0

私は誤りで、この行を参照してください。

gem install httpclient 

をしたり、Gemfileに入れ、その後、

を置く:あなたが実行する必要がありますので、

cannot load such file -- httpclient 

を、私はhttpclientが宝石であると信じて

require 'httpclient' 

スクリプトの先頭にあります。

+0

ありがとうございました!それがまさに問題でした。私は、httpclient gemとprogressbar gemの両方が欠けていたことが判明しました。私はスクリプトをもう一度実行しましたが、今はエラーを投げずにハングアップします。何故ですか? – Dan

関連する問題