摘要:是一個的客戶端,用來輕而易舉地發送請求,并集成到我們的服務上。接口簡單構建查詢語句請求分流上傳下載大文件使用上傳數據等等。發送同步或異步的請求均使用相同的接口。使用接口來請求響應分流,允許你使用其他兼容的類庫與共同開發。
Guzzle
Guzzle是一個PHP的HTTP客戶端,用來輕而易舉地發送請求,并集成到我們的WEB服務上。
接口簡單:構建查詢語句、POST請求、分流上傳下載大文件、使用HTTP cookies、上傳JSON數據等等 。
發送同步或異步的請求均使用相同的接口。
使用PSR-7接口來請求、響應、分流,允許你使用其他兼容的PSR-7類庫與Guzzle共同開發。
抽象了底層的HTTP傳輸,允許你改變環境以及其他的代碼,如:對cURL與PHP的流或socket并非重度依賴,非阻塞事件循環。
中間件系統允許你創建構成客戶端行為。
所需包"require": { "guzzlehttp/guzzle": "6.2.*" }源碼
* @CreateTime 2017-04-12T10:39:28+0800 * @param [type] $account [description] * @param [type] $password [description] * @return [type] [description] */ public function __construct( $account, $password ){ $this->jar = new CookieJar; try{ if( $this->login( $account, $password ) == "200"){ echo "----------【 START 】---------- "; $this->send(); echo "----------【 END 】---------- "; }else{ echo "登錄失敗~!"; } }catch (RequestException $e) { var_dump( $e->getRequest()); if ($e->hasResponse()) { var_dump( $e->getResponse()); } } } /** * [login 登錄] * @author Shaowei Pu <542684913> * @CreateTime 2017-04-12T10:42:16+0800 * @return [type] [description] */ public function login( $account , $password ){ // 清楚空間內cookie // $this->jar->clear(); return ( new Client([ "cookies" => true ]) )->request( "POST", "https://accounts.douban.com/j/popup/login/basic", [ "version" => 1.1 , "cookies" => $this->jar, "headers" => [ "Accept" => "application/json", "Referer" => "登錄來源頁" ], "form_params" => [ "source" => "group", "referer" => "提交接口", "name" => $account, "password" => $password, "captcha_id" => "", "captcha_solution" => "" ] ])->getStatusCode(); } /** * [send 發送內容] * @author Shaowei Pu <542684913@qq.com> * @CreateTime 2017-04-12T10:43:17+0800 * @return [type] [description] */ public function send() { // 獲得 ck $this->reload(); $ck = "ntxB"; array_map(function( $val ) use (& $ck ){ $val["Name"] == "ck" && $ck = $val["Value"]; }, $this->jar->toArray()); // 計時器 while ( $this->clock > 0 ) { $send_content = ( new Client([ "cookies" => true ]) )->request( "POST", "提交接口", [ "version" => 1.1, "cookies" => $this->jar, "headers" => [ "Accept" => "application/json", "Referer" => "來源頁" ], "form_params" => [ "ck" => $ck, "rv_comment" => "自己頂一下~!", "start" => 0, "submit_btn" =>"加上去" ] ])->getBody()->getContents(); echo date("Y-m-d H:i:s")." ".$this->clock." "; sleep( self::SLEEP ); --$this->clock; } } /** * [reload 刷新頁面] * @author Shaowei Pu <542684913@qq.com> * @CreateTime 2017-04-12T13:35:58+0800 * @return [type] [description] */ public function reload(){ (new Client([ "cookies" => true ])) ->request("GET", "訪問頁",[ "cookies" => $this->jar, "headers" => [ "Accept" => "application/json", "Referer" => "來源頁" ]]); } } new DouBanBrush("賬號","密碼");還沒做的事
驗證碼識別
優化效率
致敬像 @娃娃脾氣 大佬致敬
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/82453.html
摘要:是一個的客戶端,用來輕而易舉地發送請求,并集成到我們的服務上。接口簡單構建查詢語句請求分流上傳下載大文件使用上傳數據等等。發送同步或異步的請求均使用相同的接口。使用接口來請求響應分流,允許你使用其他兼容的類庫與共同開發。 Guzzle Guzzle是一個PHP的HTTP客戶端,用來輕而易舉地發送請求,并集成到我們的WEB服務上。 接口簡單:構建查詢語句、POST請求、分流上傳下載大文...
摘要:是一個的客戶端,用來輕而易舉地發送請求,并集成到我們的服務上。接口簡單構建查詢語句請求分流上傳下載大文件使用上傳數據等等。發送同步或異步的請求均使用相同的接口。使用接口來請求響應分流,允許你使用其他兼容的類庫與共同開發。 Guzzle Guzzle是一個PHP的HTTP客戶端,用來輕而易舉地發送請求,并集成到我們的WEB服務上。 接口簡單:構建查詢語句、POST請求、分流上傳下載大文...
摘要:使用的爬蟲知乎用戶數據爬取和分析閱讀掘金背景說明小拽利用的寫的爬蟲,實驗性的爬取了知乎用戶的基本信息同時,針對爬取的數據,進行了簡單的分析呈現。 Python 知乎爬蟲(最新) - 后端 - 掘金 環境:python3.x外部依賴包:requestsgithub項目地址 主要的問題:模擬登陸: 知乎現在改用https請求了,數據加密,但是問題不大,重要的是網頁數據改動了,而且在請求時后...
摘要:企業級業務聯想的機會還有多大年初,當時的全球市場老大惠普公司在中國臺灣打出了一則廣告聯想,連想都不要想,這一廣告語隨后引發軒然大波,并以惠普公司發出正式致歉信而告終。幾天前,一篇題為《假如帝國的黃昏降臨》的文章刷了屏,文中引述了橋水基金創始人Ray Dalio在新書《債務危機》中的一句話讓人印象深刻:很多人認為過去發生在不同年代,不同國家的經濟危機都是由不同的原因造成的,而我只看到了同樣一些...
閱讀 1342·2021-09-24 10:26
閱讀 3655·2021-09-06 15:02
閱讀 605·2019-08-30 14:18
閱讀 577·2019-08-30 12:44
閱讀 3119·2019-08-30 10:48
閱讀 1936·2019-08-29 13:09
閱讀 1994·2019-08-29 11:30
閱讀 2279·2019-08-26 13:36