用CURL 有一个属性
curl_setopt($ch, CURLOPT_ENCODING, "gzip,deflate");
完整代码:
function get_html($url){ $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true ); curl_setopt($ch, CURLOPT_HTTPHEADER, array( 'pragma: no-cache', 'cache-control: no-cache', 'sec-ch-ua: " Not A;Brand";v="99", "Chromium";v="96", "Google Chrome";v="96"', 'accept: application/json, text/plain, */*', 'content-type: application/json', 'sec-ch-ua-mobile: ?0', 'user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.93 Safari/537.36', 'sec-ch-ua-platform: "Windows"', 'sec-fetch-site: same-origin', 'sec-fetch-mode: cors', 'sec-fetch-dest: empty', 'accept-language: zh-CN,zh;q=0.9', )); // This is what solved the issue (Accepting gzip encoding) curl_setopt($ch, CURLOPT_ENCODING, "gzip,deflate"); $response = curl_exec($ch); curl_close($ch); echo $response; }
原作者:王昊的个人博客