成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

PHP 結(jié)合前端 ajax 爬取網(wǎng)站信息后, 向指定用戶發(fā)送指定短信;

ormsf / 3128人閱讀

摘要:連接結(jié)束后保存信息的文件。將獲取的信息以文件流的形式返回,而不是直接輸出。當(dāng)根據(jù)重定向時(shí),自動(dòng)設(shè)置中的信息。禁用后將終止從服務(wù)端進(jìn)行驗(yàn)證。指定最多的重定向的數(shù)量,這個(gè)選項(xiàng)是和一起使用的。

getDocumentID())->html()."
";//$eg1與$eg1->getDocumentID()效果等同 // echo pq("title")->html()."
";//就近匹配 $eg2 // phpQuery::selectDocument($eg1); //默認(rèn)會(huì)使用選定的文檔 // $mes=pq("ul")->html();//獲取所有的ul標(biāo)簽中的html內(nèi)容 // $mes=pq("ul,li")->html();//獲取所有的ul以及l(fā)i標(biāo)簽中的html內(nèi)容 // $t=pq("ul[class="article"]")->html();//獲取ul class="article"的html內(nèi)容 /*** * 根據(jù) 手機(jī)號(hào), 第幾期, 當(dāng)期號(hào)碼 發(fā)送短信通知 */ function fnSendMessageNotifications($mobile, $lotteryNumber1, $lotteryNumber2) { echo "
****[" . $mobile . "]****
" ; echo "
****[" . $lotteryNumber1 . "]****
" ; echo "
****[" . $lotteryNumber2 . "]****
" ; $host = "http://cowsms.market.alicloudapi.com"; $path = "/intf/smsapi"; $method = "GET"; $appcode = "你的appcode"; $headers = array(); array_push($headers, "Authorization:APPCODE " . $appcode); $querys = "mobile=" . $mobile . "¶s=" . $lotteryNumber1 . "%2C" . $lotteryNumber2 . "&sign=%E6%B6%88%E6%81%AF%E9%80%9A&tpid=155"; echo "
****[" . $querys . "]****
" ; $bodys = ""; $url = $host . $path . "?" . $querys; $curl = curl_init(); curl_setopt($curl, CURLOPT_CUSTOMREQUEST, $method); curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_HTTPHEADER, $headers); curl_setopt($curl, CURLOPT_FAILONERROR, false); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_HEADER, true); if (1 == strpos("$".$host, "https://")) { curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); } var_dump(curl_exec($curl)); } /** * 添加 USERAGENT , 模擬真實(shí)瀏覽器訪問 * */ function get_fcontent($url, $timeout = 5 ) { $url = str_replace( "&", "&", urldecode(trim($url)) ); $cookie = tempnam ("/tmp", "CURLCOOKIE"); $ch = curl_init(); curl_setopt( $ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; rv:1.7.3) Gecko/20041001 Firefox/0.10.1" ); curl_setopt( $ch, CURLOPT_URL, $url);//需要獲取的URL地址,也可以在 curl_init()函數(shù)中設(shè)置。 curl_setopt( $ch, CURLOPT_COOKIEJAR, $cookie );//連接結(jié)束后保存cookie信息的文件。 curl_setopt( $ch, CURLOPT_FOLLOWLOCATION, true );//啟用時(shí)會(huì)將服務(wù)器服務(wù)器返回的"Location: "放在header中遞歸的返回給服務(wù)器,使用CURLOPT_MAXREDIRS可以限定遞歸返回的數(shù)量。 curl_setopt( $ch, CURLOPT_ENCODING, "" );//HTTP請求頭中"Accept-Encoding: "的值。支持的編碼有"identity","deflate"和"gzip"。如果為空字符串"",請求頭會(huì)發(fā)送所有支持的編碼類型。在cURL 7.10中被加入。 curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );//將 curl_exec()獲取的信息以文件流的形式返回,而不是直接輸出。 curl_setopt( $ch, CURLOPT_AUTOREFERER, true );//當(dāng)根據(jù)Location:重定向時(shí),自動(dòng)設(shè)置header中的Referer:信息。 //禁用后cURL將終止從服務(wù)端進(jìn)行驗(yàn)證。使用CURLOPT_CAINFO選項(xiàng)設(shè)置證書使用CURLOPT_CAPATH選項(xiàng)設(shè)置證書目錄 如果CURLOPT_SSL_VERIFYPEER(默認(rèn)值為2)被啟用,CURLOPT_SSL_VERIFYHOST需要被設(shè)置成TRUE否則設(shè)置為FALSE。自cURL 7.10開始默認(rèn)為TRUE。從cURL 7.10開始默認(rèn)綁定安裝。 curl_setopt( $ch, CURLOPT_SSL_VERIFYPEER, false ); // # required for https urls, 在發(fā)起連接前等待的時(shí)間,如果設(shè)置為0,則無限等待。 curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT, $timeout ); curl_setopt( $ch, CURLOPT_TIMEOUT, $timeout ); // 設(shè)置cURL允許執(zhí)行的最長秒數(shù)。 curl_setopt( $ch, CURLOPT_MAXREDIRS, 10 ); //指定最多的HTTP重定向的數(shù)量,這個(gè)選項(xiàng)是和CURLOPT_FOLLOWLOCATION一起使用的。 $content = curl_exec( $ch ); curl_close ( $ch ); return $content; } // set_time_limit(0); // Maximum execution time , 設(shè)置成0的話,就是永不過期。 $lastQi = ""; // foreach保存的最后一個(gè) 期號(hào) $lastNumber = ""; // foreach保存的最后一個(gè) 號(hào)碼 $nTheLastTraversalPeriod = ""; // 緩存上一個(gè)foreach的首尾相同的期號(hào), 用以比對(duì)是否為最新一期, 也用來當(dāng)做最后一個(gè)符合條件的期號(hào) $nTheLastTraversalNumber = ""; $sessionStorage_cacheQi = ""; // 緩存上一個(gè)發(fā)送了短信的期號(hào) /** * 獲得最新一期期號(hào), 獲得最新一期號(hào)碼 * */ function fnGetTheLatestPhase(){ //詳細(xì)每個(gè)curlopt意思.轉(zhuǎn)http://www.jb51.net/article/39331.htm global $lastQi; global $lastNumber; global $nTheLastTraversalPeriod; global $nTheLastTraversalNumber; global $sessionStorage_cacheQi; $url = "http://caipiao.163.com/award/cqssc/"; $content = get_fcontent($url); phpQuery::newDocumentHTML($content); // $main = pq("title")->html(); // $table = pq(".award-winNum")->html(); $table_tr = pq("tr"); $nCurrentTerm = ""; foreach( pq(".award-winNum") as $table_tr ) { $nCurrentTerm = pq($table_tr) -> prev()-> html(); // 當(dāng)前的期號(hào) $nCurrentNumber = pq($table_tr) -> html();// 當(dāng)前號(hào)碼 if($nCurrentNumber[0] === $nCurrentNumber[strlen($nCurrentNumber)-1] && intval($nTheLastTraversalPeriod)****[" . $nTheLastTraversalPeriod . "]****
" ; } if($nCurrentTerm === "001" && !is_numeric(preg_replace("/ /", "", $nCurrentNumber))){ // 假設(shè)重新開始, 每天新一期, 舊的還在緩存, 如何辦? // 假設(shè)當(dāng)前的期號(hào)為001, 表示的時(shí)時(shí)彩從頭開始, 此時(shí)需要: // - 刪除緩存的上一個(gè)發(fā)送短信的期號(hào) // - 刪除緩存的上一個(gè)首尾相同的期號(hào) $nTheLastTraversalPeriod = ""; $sessionStorage_cacheQi = ""; } // // echo pq($table_tr); // $text = pq($table_tr) -> html();// 號(hào)碼 // $_lastQi = pq($table_tr) -> prev()-> html(); // 當(dāng)前元素的上一個(gè)元素 // echo "
****[" . $nTheLastTraversalPeriod . "]****
" ; // if($text[0] === $text[strlen($text)-1] && intval($sessionStorage_cacheQi||"")"; } echo "
"; if($nTheLastTraversalPeriod !== $sessionStorage_cacheQi){ // 假設(shè)沒有值得發(fā)送的期號(hào), 假設(shè)當(dāng)前發(fā)送的期號(hào)與之前發(fā)送的期號(hào)不同(不能相同), 則不執(zhí)行相關(guān)代碼(發(fā)送短信) $sessionStorage_cacheQi = $nTheLastTraversalPeriod; $object = (object) [ "nPeriodNumber" => $nTheLastTraversalPeriod, "nNumber" => preg_replace("/ /", "", $nTheLastTraversalNumber), ]; return $object; }else{ $object = (object) [ "nPeriodNumber" => "", "nNumber" => "", ]; return $object; } } // var_dump(fnGetTheLatestPhase()); // $options = fnGetTheLatestPhase(); // fnSendMessageNotifications("185********", $options->nPeriodNumber, $options->nNumber); while (1) { $options = fnGetTheLatestPhase(); // 兩者必須同時(shí)使用來刷新輸出緩沖 ob_flush(); //將數(shù)據(jù)從php的buffer中釋放出來 flush(); //將釋放出來的數(shù)據(jù)發(fā)送給瀏覽器, 要是沒有 flush 和 ob_flush , 瀏覽器就會(huì)陷入一種假卡死的狀態(tài) var_dump($options); if($options->nPeriodNumber){ fnSendMessageNotifications("185****", $options->nPeriodNumber, $options->nNumber); } sleep(5); }

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/96335.html

相關(guān)文章

  • PHP 結(jié)合前端 ajax 爬取網(wǎng)站信息, 指定用戶發(fā)送指定短信;

    摘要:連接結(jié)束后保存信息的文件。將獲取的信息以文件流的形式返回,而不是直接輸出。當(dāng)根據(jù)重定向時(shí),自動(dòng)設(shè)置中的信息。禁用后將終止從服務(wù)端進(jìn)行驗(yàn)證。指定最多的重定向的數(shù)量,這個(gè)選項(xiàng)是和一起使用的。

    longshengwang 評(píng)論0 收藏0
  • nodeJS實(shí)現(xiàn)基于Promise爬蟲 定時(shí)發(fā)送信息指定郵件

    摘要:也就是說,我的篇文章的請求對(duì)應(yīng)個(gè)實(shí)例,這些實(shí)例都請求完畢后,執(zhí)行以下邏輯他的目的在于對(duì)每一個(gè)返回值這個(gè)返回值為單篇文章的內(nèi)容,進(jìn)行方法處理。 英國人Robert Pitt曾在Github上公布了他的爬蟲腳本,導(dǎo)致任何人都可以容易地取得Google Plus的大量公開用戶的ID信息。至今大概有2億2千5百萬用戶ID遭曝光。 亮點(diǎn)在于,這是個(gè)nodejs腳本,非常短,包括注釋只有71行。 ...

    xuweijian 評(píng)論0 收藏0
  • JavaScript 進(jìn)階知識(shí) - Ajax

    摘要:注意事項(xiàng)以下版本要設(shè)置默認(rèn)編碼,,否則程序可能無法正確顯示中文。組成部分協(xié)議是對(duì)請求和響應(yīng)的報(bào)文內(nèi)容進(jìn)行了約束和規(guī)范。請求報(bào)文請求是由客戶端發(fā)起,其規(guī)范格式為請求行請求頭請求主體。 showImg(https://segmentfault.com/img/remote/1460000013696283?w=1920&h=1080); Ajax 前言 前面我們已經(jīng)學(xué)習(xí)了js基礎(chǔ)知識(shí)和一些...

    Dongjie_Liu 評(píng)論0 收藏0
  • JavaScript 進(jìn)階知識(shí) - Ajax

    摘要:注意事項(xiàng)以下版本要設(shè)置默認(rèn)編碼,,否則程序可能無法正確顯示中文。組成部分協(xié)議是對(duì)請求和響應(yīng)的報(bào)文內(nèi)容進(jìn)行了約束和規(guī)范。請求報(bào)文請求是由客戶端發(fā)起,其規(guī)范格式為請求行請求頭請求主體。 showImg(https://segmentfault.com/img/remote/1460000013696283?w=1920&h=1080); Ajax 前言 前面我們已經(jīng)學(xué)習(xí)了js基礎(chǔ)知識(shí)和一些...

    adie 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

ormsf

|高級(jí)講師

TA的文章

閱讀更多
最新活動(dòng)
閱讀需要支付1元查看
<