Преобразователь кода Ruby Mechanize не найден

Например, я пробовал массу вещей:

Механизировать проблему с кодировкой Ruby 1.9.3 и Как преобразовать объект Mechanize::File в объект Mechanize::Page?

Но ошибка, которую я продолжаю получать,

.rvm/gems/ruby-1.9.3-p194/gems/mechanize-2.0.1/lib/mechanize/util.rb:59:in `encode': code converter not found (UTF-8 to UTF8) (Encoding::ConverterNotFoundError)
    from /home/dhahn/.rvm/gems/ruby-1.9.3-p194/gems/mechanize-2.0.1/lib/mechanize/util.rb:59:in `encode_to'
    from /home/dhahn/.rvm/gems/ruby-1.9.3-p194/gems/mechanize-2.0.1/lib/mechanize/util.rb:45:in `from_native_charset'
    from /home/dhahn/.rvm/gems/ruby-1.9.3-p194/gems/mechanize-2.0.1/lib/mechanize/form.rb:187:in `from_native_charset'
    from /home/dhahn/.rvm/gems/ruby-1.9.3-p194/gems/mechanize-2.0.1/lib/mechanize/form.rb:181:in `block in proc_query'
    from /home/dhahn/.rvm/gems/ruby-1.9.3-p194/gems/mechanize-2.0.1/lib/mechanize/form.rb:180:in `map'
    from /home/dhahn/.rvm/gems/ruby-1.9.3-p194/gems/mechanize-2.0.1/lib/mechanize/form.rb:180:in `proc_query'
    from /home/dhahn/.rvm/gems/ruby-1.9.3-p194/gems/mechanize-2.0.1/lib/mechanize/form.rb:206:in `block in build_query'
    from /home/dhahn/.rvm/gems/ruby-1.9.3-p194/gems/mechanize-2.0.1/lib/mechanize/form.rb:198:in `each'
    from /home/dhahn/.rvm/gems/ruby-1.9.3-p194/gems/mechanize-2.0.1/lib/mechanize/form.rb:198:in `build_query'
    from /home/dhahn/.rvm/gems/ruby-1.9.3-p194/gems/mechanize-2.0.1/lib/mechanize/form.rb:249:in `request_data'
    from /home/dhahn/.rvm/gems/ruby-1.9.3-p194/gems/mechanize-2.0.1/lib/mechanize.rb:618:in `post_form'
    from /home/dhahn/.rvm/gems/ruby-1.9.3-p194/gems/mechanize-2.0.1/lib/mechanize.rb:520:in `submit'
    from /home/dhahn/.rvm/gems/ruby-1.9.3-p194/gems/mechanize-2.0.1/lib/mechanize/form.rb:167:in `submit'
    from /home/dhahn/user-management/test_script/EWI.rb:73:in `add_ext'
    from testewi.rb:15:in `<main>'

У меня есть класс, который использует механизацию и работает с ruby ​​1.8.7, но мне нужно, чтобы он работал с 1.9.3, потому что остальная часть приложения rails находится в 1.9.3. Извините, у меня сейчас какой-то беспорядок в голове, поэтому, если мне нужно включить что-то еще, пожалуйста, дайте мне знать. Это также мой первый вопрос здесь.


person David Hahn    schedule 19.07.2012    source источник


Ответы (1)


Страница, которую вы посещаете, могла неправильно описать свою кодировку.

Я думаю, что исправить это можно самостоятельно, сделав что-то вроде

page.encoding = "utf-8"
person Andrew Grimm    schedule 19.07.2012
comment
Я попытался изменить это в своем коде, но он по-прежнему выдает ту же самую ошибку. Любые другие идеи? - person David Hahn; 20.07.2012
comment
Извините, я тоже паршу и кодирую n00b. - person Andrew Grimm; 20.07.2012
comment
На самом деле это сработало, я просто добавил его не в то место! Спасибо вам большое, вы бог посылает! - person David Hahn; 20.07.2012
comment
@CodeBiker, вероятно, на github. - person Andrew Grimm; 04.07.2013
comment
Извините, я обращался к @DavidHahn, чтобы указать, куда он поместил это в своем приложении. - person CodeBiker; 04.07.2013