国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > PHP > 正文

使用PHP curl模擬瀏覽器抓取網(wǎng)站信息

2020-03-22 18:30:38
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
官方解釋
curl是一個(gè)利用URL語(yǔ)法在命令行方式下工作的文件傳輸工具。curl是一個(gè)利用URL語(yǔ)法在命令行方式下工作的文件傳輸工具。
它支持很多協(xié)議:FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE 以及 LDAP。curl同樣支持HTTPS認(rèn)證,HTTP POST方法, HTTP PUT方法, FTP上傳, kerberos認(rèn)證, HTTP上傳, 代理服務(wù)器, cookies, 用戶(hù)名/密碼認(rèn)證, 下載文件斷點(diǎn)續(xù)傳,
上載文件斷點(diǎn)續(xù)傳, http代理服務(wù)器管道( proxy tunneling), 甚至它還支持IPv6, socks5代理服務(wù)器, 通過(guò)http代理服務(wù)器上傳文件到FTP服務(wù)器等等,功能十分強(qiáng)大。

curl講解一

PHP中curl函數(shù)應(yīng)用
簡(jiǎn)單的來(lái)說(shuō)一共四步
curl_init();
curl_setopt();
curl_exec();
curl_close();

最重要的命令就是 curl_setopt();

一個(gè)簡(jiǎn)單的post請(qǐng)求例子
index.php
復(fù)制代碼 代碼如下:
?php
$url = "http://www.mytest.com/curl/login.php"; //請(qǐng)求的url地址
$user = "zkg111"; //用戶(hù)名
$pass = "123456";
$postdata = "user_name=".$user."&password=".$pass; //請(qǐng)求的數(shù)據(jù),以 & 符號(hào)分割
$curl = curl_init(); //開(kāi)啟curl
curl_setopt($curl, CURLOPT_URL, $url); //設(shè)置請(qǐng)求地址
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); //是否輸出 1 or true 是不輸出 0 or false輸出
curl_setopt($curl, CURLOPT_POST, 1); //是否使用post方法請(qǐng)求
curl_setopt($curl, CURLOPT_POSTFIELDS, $postdata); //post數(shù)據(jù)


echo $data = curl_exec($curl); //執(zhí)行curl操作
curl_close($curl);
?

下面一個(gè)簡(jiǎn)單的例子,我隨便打開(kāi)了兄弟連的論壇,接著就模擬了一下兄弟連論壇的登陸,如果需要發(fā)帖的話(huà)原理都是一樣的,轉(zhuǎn)接頁(yè)面,提交數(shù)據(jù)
特別注意的是cookie的保存目錄 html' target='_blank'>windows7下面必須是在./temp目錄下,開(kāi)始我自己創(chuàng)建了一個(gè)新文件夾,發(fā)現(xiàn)存是對(duì)的,但是cookie讀取的時(shí)候不對(duì),為此還在好多地方
提問(wèn),但是沒(méi)有回答對(duì)的,折騰了好幾天該了保存文件為./temp目錄下才可以的,提醒別的朋友別和我一樣瞎轉(zhuǎn)
復(fù)制代碼 代碼如下:
?php
$url = "http://bbs.lampbrother.net/login.php";
$urls = "http://bbs.lampbrother.net";
$lgt = 0;
$user = "XXXX";
$pass = "XXXX";
$question = 0;
$hideid = 1;
$cookie_file = tempnam('./temp','cookie');
$postdata = "forward=&jumpurl=".$urls."&step=2&lgt=".$lgt."&pwuser=".$user."&pwpwd=".$pass."&question=".$question."&answer=&hideid=".$hideid;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postdata);
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_file);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
$data = curl_exec($ch);
curl_close($ch);
//echo $data;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://bbs.lampbrother.net/');
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0);
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file);
curl_exec($ch);
curl_close($ch);
?
PHP教程

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 景德镇市| 高阳县| 古丈县| 陆川县| 读书| 宁强县| 海淀区| 巴塘县| 临安市| 长丰县| 泸水县| 平乡县| 扬中市| 南漳县| 得荣县| 广汉市| 资阳市| 昆明市| 嵩明县| 仙居县| 鄂尔多斯市| 蒙阴县| 鄂尔多斯市| 丰原市| 天水市| 万州区| 满洲里市| 平陆县| 慈利县| 法库县| 社旗县| 梁平县| 综艺| 沙洋县| 云安县| 凤冈县| 和龙市| 鄂托克前旗| 马山县| 大方县| 夏河县|