2009-08-24 11 views
3

Der folgende Code löst den oben genannten Fehler aus, wie kann ich das beheben?Mechanize Iconv :: IllegalSequence beim Versuch, eine POST-Abfrage zu erstellen

require 'mechanize' 
m = WWW::Mechanize.new 
p = m.get('http://art-mobile.com.ua/register.php') 
f = p.forms.first 
f.submit(f.buttons.last) 

Nur für den Fall, hier ist die vollständige Beschreibung eines Fehlers auf meiner Box

D:/ruby/lib/ruby/gems/1.9.1/gems/mechanize-0.9.3/lib/www/mechanize/util.rb:40:in `iconv': "Ðåãèñòðàöèÿ"... (Iconv::IllegalSequence) 
    from D:/ruby/lib/ruby/gems/1.9.1/gems/mechanize-0.9.3/lib/www/mechanize/util.rb:40:in `from_native_charset' 
    from D:/ruby/lib/ruby/gems/1.9.1/gems/mechanize-0.9.3/lib/www/mechanize/form.rb:152:in `from_native_charset' 
    from D:/ruby/lib/ruby/gems/1.9.1/gems/mechanize-0.9.3/lib/www/mechanize/form.rb:144:in `block in proc_query' 
    from D:/ruby/lib/ruby/gems/1.9.1/gems/mechanize-0.9.3/lib/www/mechanize/form.rb:143:in `map' 
    from D:/ruby/lib/ruby/gems/1.9.1/gems/mechanize-0.9.3/lib/www/mechanize/form.rb:143:in `proc_query' 
    from D:/ruby/lib/ruby/gems/1.9.1/gems/mechanize-0.9.3/lib/www/mechanize/form.rb:198:in `block in build_query' 
    from D:/ruby/lib/ruby/gems/1.9.1/gems/mechanize-0.9.3/lib/www/mechanize/form.rb:197:in `each' 
    from D:/ruby/lib/ruby/gems/1.9.1/gems/mechanize-0.9.3/lib/www/mechanize/form.rb:197:in `build_query' 
    from D:/ruby/lib/ruby/gems/1.9.1/gems/mechanize-0.9.3/lib/www/mechanize/form.rb:214:in `request_data' 
    from D:/ruby/lib/ruby/gems/1.9.1/gems/mechanize-0.9.3/lib/www/mechanize.rb:401:in `post_form' 
    from D:/ruby/lib/ruby/gems/1.9.1/gems/mechanize-0.9.3/lib/www/mechanize.rb:344:in `submit' 
    from D:/ruby/lib/ruby/gems/1.9.1/gems/mechanize-0.9.3/lib/www/mechanize/form.rb:130:in `submit' 
    from D:/doer.rb:8:in `<main>' 

Und BTW this solution funktioniert nicht

Antwort

0

Sieht aus wie die Lösung der Edelstein eine neu zu schreiben ist wenig, so dass es die Kodierung der Seite in utf-8 beim Initialisieren einer neuen Seite konvertiert, @encoding var in utf-8 ändert und die ursprüngliche Kodierung in einer anderen Datei speichert und Änderungen vornimmt, die das Juwel zwingen, die ursprüngliche Kodierung zu verwenden Bilden einer Abfrage

Verwandte Themen