2011-08-23 88 views
2

有一段時間我一直在試圖解決相當普遍的問題包括三個基本步驟:通用「HTTP GET HTML頁面內容和重新編碼成UTF-8」的過程

  1. 獲取的HTML頁面指定的URL和存儲其在字符串
  2. 檢測內容編碼無論是從HTML元信息或HTTP標題
  3. 重新編碼內容轉換成UTF-8以用於進一步處理

在實際使用我有內容第一步稍微擴展了諸如具有cookie-jar的「用戶代理」實例,可配置的超時和GET嘗試次數,可配置的每個時間幀限制的請求計數等功能...

我實施了rest-client包裝但我遇到了幾個問題:

  • class-global RestClient.proxy設置與eg衝突couchrest(使用rest-client本身)
  • 凍結:有時超時導致過程凍結。 AFAIK更多的朋友遇到同樣的問題rest-client
  • 重定向Location URI解析:rest-client無法正確提取「http://www.ofertacarioca.com.br/index.aspx?cidade=4,Belo%20Horizo​​nte」抱怨無效的URI'/indexnew.aspx?cidade=4,Belo Horizo​​nte'在30232結果的Location標題中,但curb可以完美地處理目標頁面。我很擔心,在第三步中使用的curb
  • 重新編碼問題重新實現包裝:我嘗試了一些網頁仍然會檢測從HTML頁面的元信息和HTTP頭(以這個順序)編碼無濟於事

我很想知道一些很酷的寶石可以處理這種需求或者一些有趣的通用解決方案提示(如果有的話)。

回答

0

由於沒有人回答,我需要落實curb爲基礎的解決方案: curburger

也許有人認爲它有用。