PHP京东商城爬取网页乱码问题解决
生活随笔
收集整理的這篇文章主要介紹了
PHP京东商城爬取网页乱码问题解决
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
最近公司要求做天貓和京東的店鋪爬取,天貓店鋪磕磕碰碰算是出了結果,然而進行到京東時確發現無論是file_get_contents 還是 curl,爬下來的網頁總是會是寫莫名其妙的文字,并不是常規的亂碼,所以判斷可能是京東服務器對網頁做了處理,首先懷疑是不是被加密了,如果是加密就需要找到加密規則,那這工作就難進行了,最后經過一番資料查找,最后確定是網頁進行了gz壓縮,編輯器由于打開了二進制文件所以呈現了亂碼。
那么既然確定了問題出現的原因,接下來就該尋找解決方案。
搜索出兩種解決方案,第一種就是將return的字符進行解碼 $return = gzdecode($return); 第二種則是在curl請求時附加?curl_setopt($ch, CURLOPT_ENCODING, 'gzip');?
兩種我都嘗試了一下,第一種成功解決亂碼,第二種不知為何,添加了之后curl請求回來的內容竟然為空,那么很明顯,就用第一種吧
?
總結
以上是生活随笔為你收集整理的PHP京东商城爬取网页乱码问题解决的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java char表_char码值对应列
- 下一篇: php error allowed,Th