1. 程式人生 > >curl採集亂碼(非編碼問題)

curl採集亂碼(非編碼問題)

採集網址時發現是亂碼,但用chrome編碼轉換後還是亂碼,於是確定不是編碼問題。

找到原因是,user_agent的問題,需要curl模擬瀏覽器訪問才能得到正常的資料。

	function curlx()
	{
		header("Content-Type:text/html; charset=GBK");
		
		$url 		= "http://tv.sohu.com/s2013/wstzbzhfh/";
		$ch = curl_init();//curl
		$user_agent = "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.2 (KHTML, like Gecko) Chrome/15.0.874.121 Safari/535.2";
		curl_setopt($ch, CURLOPT_URL, $url);
		curl_setopt($ch, CURLOPT_HEADER, 0);
		curl_setopt($ch, CURLOPT_USERAGENT, $user_agent);
		$str 	= curl_exec($ch); //得到頁面內容
		//$str = mb_convert_encoding($output, "utf-8", "GBK");
		echo($str);

		curl_close($ch);//釋放控制代碼

	}