採集亂碼解決方案
出現亂碼的問題很多,解決方法也不盡相同,要視具體情況而定,以下幾種亂碼解決方案僅供參考。
一.使用QueryList內建的亂碼解決方案
Query方法:
QueryList::Query(採集的目標頁,擷取規則[,區域選擇器][,輸出編碼][,輸入編碼][,是否移除頭部])
1.設定輸入輸出編碼
$html =<<<STR <div> <p>这是内容</p> </div> STR; $rule = array( 'content' => array('div>p:last','text') ); $data = QueryList::Query($html,$rule,'','UTF-8','GB2312',true)->data;
2.設定輸入輸出編碼,並設定最後一個參數為true
如果設定輸入輸出參數仍然無法解決亂碼,那就設定最後一個參數為true(移除頭部)
$html =<<<STR <div> <p>这是内容</p> </div> STR; $rule = array( 'content' => array('div>p:last','text') ); $data = QueryList::Query($html,$rule,'','UTF-8','GB2312',true)->data;
二.查看QueryList論壇[亂碼]相關主題解決方案
亂碼:http://querylist.cc/search/q-5Lmx56CB#all
三.自己手動轉碼頁面,然後再把頁面傳給QueryList
$html =<<<STR <div> <p>这是内容</p> </div> STR; $rule = array( 'content' => array('div>p:last','text') ); $data = QueryList::Query($html,$rule,'','UTF-8','GB2312',true)->data;