2016-05-06 3 views
0

Ich analysiere eine russische Website mit Nokogiri.inkompatible Zeichencodierungen: UTF-8 und Windows-1251

Dies ist mein Controller

class ParserController < ApplicationController 
    require 'open-uri' 

    require 'nokogiri' 


    def test 
    source = 'http://www.rp.ru/shop/?set_filter=Y&query=&level1=%CE%C1%CE%D0%D3%C4%CE%C2%C0%CD%C8%C5+%C4%CB%DF+%CC%C0%C3%C0%C7%C8%CD%C0&level2=%D5%CE%CB%CE%C4%C8%CB%DC%CD%CE%C5+%CE%C1%CE%D0%D3%C4%CE%C2%C0%CD%C8%C5&level3=%CB%C0%D0%DC+%CC%CE%D0%CE%C7%C8%CB%DC%CD%DB%C9%2C+%D5%CE%CB%CE%C4%C8%CB%DC%CD%DB%C9&tid=4_2225606&q=&manufacturer=0&type=0&count=100&XML_ID=&section=0&sort=0&show_type=1' 

    page = Nokogiri::HTML(open(source)) 
    @titles = [] 
    page.css('.salenamebrand').each do |t| 
    @titles << t 
    end 
end 

Und das ist meine Ansicht

<% @titles.each do |t| %> 
<%=t%> 

<%end%> 

Und ich bekomme diese Fehlermeldung:

Encoding::CompatibilityError in Parser#test 

incompatible character encodings: UTF-8 and Windows-1251 

Was kann ich tun?

Antwort

0

Es scheint, als ob ich nur etwas schreiben musste: @titles << t.text und es funktioniert jetzt!