我正在抓取带有重音字符(如“é”)的网页(使用php的curl)。 在这些网页的来源中,这些字符是使用utf-8编写的(它们不是html编码的。)
但是,当使用以下代码生成结果时,我会得到问号而不是重音字符。
$ch = curl_init();
$timeout = 5;
curl_setopt ($ch, CURLOPT_URL, $website);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$file = curl_exec($ch);
curl_close($ch);
从抓取的网页返回的标题信息表明内容设置为“html / text”。没有迹象表明它是utf-8编码的。我尝试使用CURLOPT_HTTPHEADER curl选项来更改文本编码,但这没有做任何事情。
我错过了什么?
答案 0 :(得分:1)
根据我的问题的答案,看看 characters changed in a Curl request
答案Dominic Rodger刚刚回复了我的一天......