採集頁面編碼GBK處理注意的問題

2022-05-17 15:25:09 字數 719 閱讀 8199

現在專案基本都是utf-8編碼的,但是有個別**還是gbk編碼的,比如搜狗。採集到的gbk編碼的頁面處理會導致解析不了html內容。

/**

* 內容處理

* 把gbk轉碼為utf-8

* 頭部標識編碼 gbk替換成utf-8(採集的時候頁面轉換成了utf-8編碼,header頭也一定記得替換成utf-8編碼,否則編碼就會有問題)

*/$content = iconv('gbk', "utf-8//ignore", $content);

$content = preg_replace("/gb(k|2312)/i", "utf-8", $content);

function doencoding($str)

return $str;

}

/**

* 轉換gbk編碼為utf8

* @param $html

* @param $curl_info

* @return mixed|string

*/private function do_html_to_utf8($html, $curl_info)

return $html;

}

$content= preg_replace('##' , '' ,$content);

通過後台採集返回頁面資訊需要注意的事項

string url context.request.querystring.tostring 這裡一定要加上http req.method post 根據需要使用具體的方式,預設是get response.contenttype text html charset gb2312 設定mime型別,...

頁面字元編碼不一致的處理

有時候因為工作需要,會處理一些非開發人員處理的頁面,比如美工。就有可能遇到字元編碼不一致的情況。我們的開發環境預設用utf 8,但美工用gb2312。結果他處理過的檔案,有漢字的,都亂碼。如果是css檔案,裡面有漢字,還導致樣式失效,查詢了好久才找到原因。剛開始的時候,不知道在vs.net怎麼設定字...

頁面字元編碼不一致的處理

有時候因為工作需要,會處理一些非開發人員處理的頁面,比如美工。就有可能遇到字元編碼不一致的情況。我們的開發環境預設用utf 8,但美工用gb2312。結果他處理過的檔案,有漢字的,都亂碼。如果是css檔案,裡面有漢字,還導致樣式失效,查詢了好久才找到原因。剛開始的時候,不知道在vs.net怎麼設定字...