Piszę robota w języku Ruby (1.9), który zużywa dużo kodu HTML z wielu przypadkowych witryn.
Próbując wyodrębnić linki, zdecydowałem się po prostu użyć .scan(/href="(.*?)"/i)
zamiast nokogiri / hpricot (duże przyspieszenie). Problem w tym, że teraz otrzymuję dużo " invalid byte sequence in UTF-8
" błędów.
Z tego, co zrozumiałem, net/http
biblioteka nie ma żadnych konkretnych opcji kodowania, a rzeczy, które wchodzą, są w zasadzie nieprawidłowo oznaczone.
Jaki byłby najlepszy sposób pracy z przychodzącymi danymi? Próbowałem .encode
z ustawionymi zamiennikami i nieprawidłowymi opcjami, ale jak dotąd bez powodzenia ...
'U*'
cofa 'C*'
?