PHP curl--电信手机号码话费余额
生活随笔
收集整理的這篇文章主要介紹了
PHP curl--电信手机号码话费余额
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
手機號碼充值地址:http://wapgd.189.cn/TS/weixin/new/cz.htm?cmpid=weixin-gdkf-server-cz&winzoom=1&wxapp=true&openId=orLiJju2pHCirkyUHDMz_4jhVkGc&from=groupmessage
?
一、網站分析
1)、用瀏覽器打開網站,F12打開? 開發者調試工具,切換到Network
2)、輸入手機號碼,點擊査欠費,觀察請求,查看響應結果
查看
通過以上分析,獲得話費的余額查詢接口地址和所需的參數,下面開始用PHP完成接口信息的獲取
二、PHP Curl請求接口
<?php//1、設置查詢的手機號碼 $phone="173xxxxxxx";$result=[]; //2、模擬查詢5次 for ($i=0; $i < 5; $i++) { $url_page ="http://wapgd.189.cn/getBalanceJson.do?latn_id=020&busiType=CDMA&chargeNum=".$phone."&Order_url=WTouch&chargeType=5BA";$user_agentArray = array("Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/34.0.1847.131 Safari/537.36",);$proxyArray = array("http://110.52.235.130:9999" //代理ip和端口,測試時可去以下網站獲取代理ip,http://ip.zdaye.com/dayProxy.html);$proxy = empty($proxyArray) ? "" : $proxyArray[rand(0, count($proxyArray) - 1)];$user_agent = $user_agentArray[rand(0, count($user_agentArray) - 1)];$rs=curl_string($url_page,$user_agent, $proxy,$proxyport);$result[$i]=$rs; } //3、格式化打印結果 echo "<pre>"; var_dump($result);//生成隨機IP function Rand_IP(){$ip2id= round(rand(600000, 2550000) / 10000); //第一種方法,直接生成$ip3id= round(rand(600000, 2550000) / 10000);$ip4id= round(rand(600000, 2550000) / 10000);//下面是第二種方法,在以下數據中隨機抽取$arr_1 = array("218","218","66","66","218","218","60","60","202","204","66","66","66","59","61","60","222","221","66","59","60","60","66","218","218","62","63","64","66","66","122","211");$randarr= mt_rand(0,count($arr_1)-1);$ip1id = $arr_1[$randarr];return $ip1id.".".$ip2id.".".$ip3id.".".$ip4id; } //curl函數 function curl_string ($url,$user_agent,$proxy,$proxyport){$ch = curl_init();// 有代理IP就使用代理if (!empty($proxy)) { curl_setopt ($ch, CURLOPT_PROXY, $proxy); // 使用代理IP// 偽造客戶端來源IP$xforip = rand(1, 254).".".rand(1, 254).".".rand(1, 254).".".rand(1, 254);curl_setopt ($ch, CURLOPT_HTTPHEADER, array('CLIENT-IP:'.$xforip, 'X-FORWARDED-FOR:'.$xforip));}curl_setopt ($ch, CURLOPT_URL, $url);curl_setopt ($ch, CURLOPT_POSTFIELDS, 'article_id=10898');curl_setopt ($ch, CURLOPT_USERAGENT, $user_agent); //模擬用戶使用的瀏覽器curl_setopt ($ch, CURLOPT_RETURNTRANSFER, true);curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, 1); // 使用自動跳轉curl_setopt ($ch, CURLOPT_AUTOREFERER, 1 ); // 自動設置Referercurl_setopt ($ch, CURLOPT_TIMEOUT, 120);$result = curl_exec ($ch);curl_close($ch);return $result; }測試結果如下:
注:此案例僅學習使用,請勿做任何違法行為!
總結
以上是生活随笔為你收集整理的PHP curl--电信手机号码话费余额的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 130242014047-徐晓敏-实验一
- 下一篇: linux上运行unity3d,ubun