0

OptionParser を使用するのはこれが初めてで、次のエラーが発生します。

/Users/jay/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/mechanize-> 2.7.3/lib/mechanize/http/agent.rb:651:in resolve': absolute URL needed (not -v) (ArgumentError)from /Users/jay/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/mechanize-2.7.3/lib/mechanize/http/agent.rb:223:infetch' from / Users/jay/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/mechanize-2.7.3/lib/mechanize.rb:440:in get' from /Users/jay/Code/linkedin-scraper/lib/myModel-scraper/profile.rb:20:ininitialize' from ./bin/myModel-scraper :6:in new' from ./bin/myModel-scraper:6:in'

置き場:

require 'rubygems'
require 'optparse'

opts = OptionParser.new do |opts|
 opts.on_tail("-v", "--version", "Show version") { puts myModel::Scraper::VERSION; exit }
 opts.parse!
end

ライブラリ/バージョン:

module myModel
  module Scraper
    VERSION = '0.1.2'
  end
end

私はこれを完全に間違っていると思います。誰かがここで何が起こっているのか説明できますか?

4

1 に答える 1

0

私は通常、次のような OptionParser ブロックを記述します。

OptionParser.new do |opts|
  opts.on_tail("-v", "--version", "Show version") { puts myModel::Scraper::VERSION; exit }
end.parse!

私はおそらくon代わりに使用しますon_tail

opts.on("-v", "--version", "Show version") { puts myModel::Scraper::VERSION; exit }

しかし、ヘルプ リストの最後に表示したい理由は理解できます。

于 2014-08-26T18:14:18.700 に答える