沒有做過網頁抓取類似的功能,file_get_contents這個方法使用的次數也不多。
昨天在phpchina上看見一個網頁詢問說,使用file_get_contents在抓取souhu blog的時候,出現亂碼問題,但是抓取新浪blog的時候卻沒有
亂碼問題。這個問題,我不知道的怎麼解決,更不知道為什麼。今天,在phpchina上看到lz已經結貼了。答案如下:
擷取的頭部當中有Content-Encoding: gzip說明內容是GZIP壓縮的 解壓後就能得到內容了
PHP內建的file_get_contents不支援GZIP 可以試試CURL 好象能處理GZIP
- array(11) {
- [0]=>
- string(15) "HTTP/1.1 200 OK"
- [1]=>
- string(35) "Content-Type: text/html;charset=gbk"
- [2]=>
- string(17) "Connection: close"
- [3]=>
- string(13) "Server: nginx"
- [4]=>
- string(35) "Date: Fri, 29 Oct 2010 00:36:51 GMT"
- [5]=>
- string(26) "Vary: Host,Accept-Encoding"
- [6]=>
- string(14) "Pragma: Public"
- [7]=>
- string(26) "Cache-Control: max-age=300"
- [8]=>
- string(38) "Expires: Fri, 29 Oct 2010 00:41:53 GMT"
- [9]=>
- string(22) "Content-Encoding: gzip"
- [10]=>
- string(14) "FSS-Cache: HIT"
- }
複製代碼再次多謝lz提的問題,已經這位仁兄的答案。讓我又學到了東西。phpchina中文章的串連為:http://bbs.phpchina.com/thread-199524-1-1.html看樣子,phpchina csdn 這樣的論壇還是要多多看看的。要學的東西還是很多的。