[爆卦]curl中文亂碼是什麼?優點缺點精華區懶人包

為什麼這篇curl中文亂碼鄉民發文收入到精華區:因為在curl中文亂碼這個討論話題中,有許多相關的文章在討論,這篇最有參考價值!作者crossdunk (魯來又魯去)看板PHP標題[請益] curl抓回來的問題時間Mon Nov...


是這樣的

小弟最近在學curl,現在有個問題是

抓回來的東西出現確是亂碼

我試過用別的編碼方式,卻都還是亂碼

大概是像下面這樣

<a href="http://www.8591.com.tw/user-login.html">å·2 è2 ·åˆ°ç?</a>

<a href="http://www.8591.com.tw/user-login.html">å·2 è3 £出ç</a>

<a href="http://www.8591.com.tw/user-login.html">é2 è3 £å鄊
我是以8591網站來做測試的

請問要如何知道他的編碼是什麼來做轉換呢?

我看他的表頭是用UTF-8

我顯示的方式也用UTF-8,卻還是亂碼

請各位先進給小弟一點指導

謝謝!

--
Democracy = ('PIG'==$Mayor)?'China':'Our';

--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 59.120.19.218
※ 文章網址: http://www.ptt.cc/bbs/PHP/M.1416211028.A.725.html
LPH66: 你的程式是怎麼寫的? 這看起來像是把 UTF-8 解做英文編碼 11/17 21:06


$url =
'http://www.8591.com.tw/wareList-sellList-22.html?searchServer=2031&searchType=1';
$ch = curl_init();
$this_header = array(
"content-type: application/x-www-form-urlencoded;
charset=UTF-8"
);
$timeout = 30;

curl_setopt ($ch, CURLOPT_URL, $url); //設定抓取網址
curl_setopt($ch,CURLOPT_HTTPHEADER,$this_header);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);//逾時時間

$data = curl_exec($ch);

$file = fopen("data8591.html", 'w');
fwrite($file, $data);
fclose($file);

我是先抓下來放到一個檔案來試試看

打開data8591.html中文字的部分就是亂碼了..


alog: 這latin1吧 11/18 02:40
alog: 你用python or ruby2抓抓看 11/18 02:41
alog: 應該會是utf8 11/18 02:42

查了一下latin1好像都是關於資料庫的

很不幸的alog大說的兩種我都不會QQ
※ 編輯: crossdunk (59.120.19.218), 11/18/2014 08:59:18
shadowjohn: 你在windows上看,試看看把UTF-8轉BIG5就可以正常看 11/18 11:01

不好意思,我在網頁上改編碼方式,改成BIG5還是亂碼QQ
※ 編輯: crossdunk (59.120.19.218), 11/18/2014 11:40:20
InDer5566: 你的純文字檔 不是用ansi建的吧? 11/20 20:18
InDer5566: 看錯 你的data8591.html 開頭有宣告是utf-8嗎? 11/20 20:20
InDer5566: 總覺得這個問題 是在抓下來時發生的.... 11/20 20:24
InDer5566: 我都是寫一個專門display的html 好像沒發生過這種事情 11/20 20:25
InDer5566: 我用你的碼測了一下抓8591首頁 沒任何問題哎@@ 11/20 20:30
InDer5566: 是不是你browser的問題?@@ 11/20 20:31
InDer5566: 我用你的跟樓下的碼 跑起來很正常哎 @@"" 11/20 20:32
InDer5566: 還是說你是用國外的server... 有時候本機測試正常 11/20 20:59
InDer5566: 但是你直接用國外主機去爬... 他好像 有時候會有問題 11/20 21:00
InDer5566: 可能跟他某些設定有關....@@" 11/20 21:02

你可能也想看看

搜尋相關網站