电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

php遠程請求CURL實例教程(爬蟲、保存登錄狀態)

瀏覽:93日期:2022-09-08 14:43:22

cURL

cURL可以使用URL的語法模擬瀏覽器來傳輸數據,因為它是模擬瀏覽器,因此它同樣支持多種協議,FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE 以及 LDAP等協議都可以很好的支持,包括一些:HTTPS認證,HTTP POST方法,HTTP PUT方法,FTP上傳,keyberos認證,HTTP上傳,代理服務器,cookies,用戶名/密碼認證,下載文件斷點續傳,上傳文件斷點續傳,http代理服務器管道,甚至它還支持IPv6,scoket5代理服務器,通過http代理服務器上傳文件到FTP服務器等等。

本文主要介紹的是php遠程請求CURL(爬蟲、保存登錄狀態)的相關內容,下面話不多說了,來一起看看詳細的介紹吧

GET案例

/** * curl_get * @param $url * @param null $param * @param null $options * @return array */function curl_get($url,$param = null,$options = null){ if(empty($options)){ $options = array( ’timeout’ => 30,// 請求超時 ’header’ => array(), ’cookie’ => ’’,// cookie字符串,瀏覽器直接復制即可 ’cookie_file’ => ’’,// 文件路徑,并要有讀寫權限的 ’ssl’ => 0,// 是否檢查https協議 ’referer’ => null ); }else{ empty($options[’timeout’]) && $options[’timeout’] = 30; empty($options[’ssl’]) && $options[’ssl’]= 0; } $result = array( ’code’ => 0, ’msg’ => ’success’, ’body’ => ’’ ); if(is_array($param)){ $param = http_build_query($param); } $url = strstr($url,’?’)?trim($url,’&’).’&’.$param:$url.’?’.$param; $ch = curl_init(); curl_setopt($ch,CURLOPT_URL, $url);// 設置url !empty($options[’header’]) && curl_setopt($ch, CURLOPT_HTTPHEADER, $options[’header’]); // 設置請求頭 if(!empty($options[’cookie_file’]) && file_exists($options[’cookie_file’])){ curl_setopt($ch, CURLOPT_COOKIEFILE, $options[’cookie_file’]); curl_setopt($ch, CURLOPT_COOKIEJAR, $options[’cookie_file’]); }else if(!empty($options[’cookie’])){ curl_setopt($ch, CURLOPT_COOKIE, $options[’cookie’]); } curl_setopt($ch, CURLOPT_ENCODING, ’gzip’); //curl解壓gzip頁面內容 curl_setopt($ch, CURLOPT_HEADER, 0);// 不獲取請求頭 curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);// 輸出轉移,不輸出頁面 !$options[’ssl’] && curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, $options[’ssl’]); // 禁止服務器端的驗證ssl !empty($options[’referer’]) && curl_setopt($ch, CURLOPT_REFERER, $options[’referer’]);//偽裝請求來源,繞過防盜 curl_setopt($ch, CURLOPT_TIMEOUT, $options[’timeout’]); //執行并獲取內容 $output = curl_exec($ch); //對獲取到的內容進行操作 if($output === FALSE ){ $result[’code’] = 1; // 錯誤 $result[’msg’] = 'CURL Error:'.curl_error($ch); } $result[’body’] = $output; //釋放curl句柄 curl_close($ch); return $result;}

POST案例

/** * curl_post * @param $url 請求地址 * @param null $param get參數 * @param array $options 配置參數 * @return array */function curl_post($url,$param = null,$options = array()){ if(empty($options)){ $options = array( ’timeout’ => 30, ’header’ => array(), ’cookie’ => ’’, ’cookie_file’ => ’’, ’ssl’ => 0, ’referer’ => null ); }else{ empty($options[’timeout’]) && $options[’timeout’] = 30; empty($options[’ssl’]) && $options[’ssl’]= 0; } $result = array( ’code’ => 0, ’msg’ => ’success’, ’body’ => ’’ ); if(is_array($param)){ $param = http_build_query($param); } $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url);// 設置url !empty($options[’header’]) && curl_setopt($ch, CURLOPT_HTTPHEADER, $options[’header’]); // 設置請求頭 if(!empty($options[’cookie_file’]) && file_exists($options[’cookie_file’])){ curl_setopt($ch, CURLOPT_COOKIEFILE, $options[’cookie_file’]); curl_setopt($ch, CURLOPT_COOKIEJAR, $options[’cookie_file’]); }else if(!empty($options[’cookie’])){ curl_setopt($ch, CURLOPT_COOKIE, $options[’cookie’]); } curl_setopt($ch, CURLOPT_ENCODING, ’gzip’); //curl解壓gzip頁面內容 curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $param); curl_setopt($ch, CURLOPT_HEADER, 0);// 不獲取請求頭 curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);// 輸出轉移,不輸出頁面 !$options[’ssl’] && curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, $options[’ssl’]); // 禁止服務器端的驗證ssl !empty($options[’referer’]) && curl_setopt($ch, CURLOPT_REFERER, $options[’referer’]);//偽裝請求來源,繞過防盜 curl_setopt($ch, CURLOPT_TIMEOUT, $options[’timeout’]); //執行并獲取內容 $output = curl_exec($ch); //對獲取到的內容進行操作 if($output === FALSE ){ $result[’code’] = 1; // 錯誤 $result[’msg’] = 'CURL Error:'.curl_error($ch); } $result[’body’] = $output; //釋放curl句柄 curl_close($ch); return $result;}

其他請求類型請自己參考封裝處理

到此這篇關于php遠程請求CURL(爬蟲、保存登錄狀態)的文章就介紹到這了,更多相關php遠程請求CURL(爬蟲、保存登錄狀態)內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: PHP
相關文章:
主站蜘蛛池模板: 荣事达手推洗地机_洗地机厂家_驾驶式扫地机_工业清洁设备 | 渣油泵,KCB齿轮泵,不锈钢齿轮泵,重油泵,煤焦油泵,泊头市泰邦泵阀制造有限公司 | 铸铝门厂家,别墅大门庭院大门,别墅铸铝门铜门[十大品牌厂家]军强门业 | 小型UV打印机-UV平板打印机-大型uv打印机-UV打印机源头厂家 |松普集团 | 万濠影像仪(万濠投影仪)百科-苏州林泽仪器 | 扒渣机厂家_扒渣机价格_矿用扒渣机_铣挖机_撬毛台车_襄阳永力通扒渣机公司 | 液氨泵,液化气泵-淄博「亚泰」燃气设备制造有限公司 | 齿轮减速电机一体机_蜗轮蜗杆减速马达-德国BOSERL齿轮减速机带电机生产厂家 | 衬氟旋塞阀-卡套旋塞阀-中升阀门首页 | 喷播机厂家_二手喷播机租赁_水泥浆洒布机-河南青山绿水机电设备有限公司 | 步进电机_agv电机_伺服马达-伺服轮毂电机-和利时电机 | 美国查特CHART MVE液氮罐_查特杜瓦瓶_制造全球品质液氮罐 | 欧洲MV日韩MV国产_人妻无码一区二区三区免费_少妇被 到高潮喷出白浆av_精品少妇自慰到喷水AV网站 | 荣事达手推洗地机_洗地机厂家_驾驶式扫地机_工业清洁设备 | 安规_综合测试仪,电器安全性能综合测试仪,低压母线槽安规综合测试仪-青岛合众电子有限公司 | 杭州代理记账费用-公司注销需要多久-公司变更监事_杭州福道财务管理咨询有限公司 | 扒渣机厂家_扒渣机价格_矿用扒渣机_铣挖机_撬毛台车_襄阳永力通扒渣机公司 | UV固化机_UVLED光固化机_UV干燥机生产厂家-上海冠顶公司专业生产UV固化机设备 | 土壤墒情监测站_土壤墒情监测仪_土壤墒情监测系统_管式土壤墒情站-山东风途物联网 | 巩义市科瑞仪器有限公司| 甲级防雷检测仪-乙级防雷检测仪厂家-上海胜绪电气有限公司 | 压缩空气冷冻式干燥机_吸附式干燥机_吸干机_沪盛冷干机 | 广东高华家具-公寓床|学生宿舍双层铁床厂家【质保十年】 | 北京成考网-北京成人高考网| 自动气象站_农业气象站_超声波气象站_防爆气象站-山东万象环境科技有限公司 | 电采暖锅炉_超低温空气源热泵_空气源热水器-鑫鲁禹电锅炉空气能热泵厂家 | 称重传感器,测力传感器,拉压力传感器,压力变送器,扭矩传感器,南京凯基特电气有限公司 | 真空泵厂家_真空泵机组_水环泵_旋片泵_罗茨泵_耐腐蚀防爆_中德制泵 | 真空冷冻干燥机_国产冻干机_冷冻干燥机_北京四环冻干 | 澳洁干洗店加盟-洗衣店干洗连锁「澳洁干洗免费一对一贴心服务」 干洗加盟网-洗衣店品牌排行-干洗设备价格-干洗连锁加盟指南 | 间甲酚,间甲酚厂家-山东祥东新材料 | 胶水,胶粘剂,AB胶,环氧胶,UV胶水,高温胶,快干胶,密封胶,结构胶,电子胶,厌氧胶,高温胶水,电子胶水-东莞聚力-聚厉胶粘 | 房车价格_依维柯/大通/东风御风/福特全顺/江铃图片_云梯搬家车厂家-程力专用汽车股份有限公司 | 空心明胶胶囊|植物胶囊|清真胶囊|浙江绿键胶囊有限公司欢迎您! | 二手色谱仪器,十万分之一分析天平,蒸发光检测器,电位滴定仪-湖北捷岛科学仪器有限公司 | 双杰天平-国产双杰电子天平-美国双杰-常熟双杰仪器 | 空调风机,低噪声离心式通风机,不锈钢防爆风机,前倾皮带传动风机,后倾空调风机-山东捷风风机有限公司 | 热熔胶网膜|pes热熔网膜价格|eva热熔胶膜|热熔胶膜|tpu热熔胶膜厂家-苏州惠洋胶粘制品有限公司 | 粉丝机械,粉丝烘干机,粉丝生产线-招远市远东粉丝机械有限公司 | 阜阳成人高考_阜阳成考报名时间_安徽省成人高考网 | 成都中天自动化控制技术有限公司 |