如何使用PHPcurl模擬瀏覽器抓取網(wǎng)站信息-創(chuàng)新互聯(lián)

這篇文章主要介紹“如何使用PHP curl模擬瀏覽器抓取網(wǎng)站信息”,在日常操作中,相信很多人在如何使用PHP curl模擬瀏覽器抓取網(wǎng)站信息問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”如何使用PHP curl模擬瀏覽器抓取網(wǎng)站信息”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

創(chuàng)新互聯(lián)公司是一家專注于成都做網(wǎng)站、成都網(wǎng)站建設與策劃設計,泌陽網(wǎng)站建設哪家好?創(chuàng)新互聯(lián)公司做網(wǎng)站,專注于網(wǎng)站建設十余年,網(wǎng)設計領域的專業(yè)建站公司;建站業(yè)務涵蓋:泌陽等地區(qū)。泌陽做網(wǎng)站價格咨詢:18980820575

官方解釋
curl是一個利用URL語法在命令行方式下工作的文件傳輸工具。curl是一個利用URL語法在命令行方式下工作的文件傳輸工具。
它支持很多協(xié)議:FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE 以及 LDAP。curl同樣支持HTTPS認證,HTTP POST方法, HTTP PUT方法, FTP上傳, kerberos認證, HTTP上傳, 代理服務器, cookies, 用戶名/密碼認證, 下載文件斷點續(xù)傳,
上載文件斷點續(xù)傳, http代理服務器管道( proxy tunneling), 甚至它還支持IPv6, socks5代理服務器, 通過http代理服務器上傳文件到FTP服務器等等,功能十分強大。

curl講解一

PHP中curl函數(shù)應用
簡單的來說一共四步
curl_init();
curl_setopt();
curl_exec();
curl_close();

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

一個簡單的post請求例子
index.php


復制代碼 代碼如下:


<?php
$url = "/tupian/20230522/login.php";  //請求的url地址
$user = "zkg111"; //用戶名
$pass = "123456";
$postdata = "user_name=".$user."&password=".$pass;  //請求的數(shù)據(jù),以 & 符號分割
$curl = curl_init(); //開啟curl
curl_setopt($curl, CURLOPT_URL, $url); //設置請求地址
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);  //是否輸出 1 or true 是不輸出 0  or false輸出
curl_setopt($curl, CURLOPT_POST, 1); //是否使用post方法請求
curl_setopt($curl, CURLOPT_POSTFIELDS, $postdata);  //post數(shù)據(jù)

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



 下面一個簡單的例子,我隨便打開了兄弟連的論壇,接著就模擬了一下兄弟連論壇的登陸,如果需要發(fā)帖的話原理都是一樣的,轉(zhuǎn)接頁面,提交數(shù)據(jù)
特別注意的是cookie的保存目錄 windows7下面必須是在./temp目錄下,開始我自己創(chuàng)建了一個新文件夾,發(fā)現(xiàn)存是對的,但是cookie讀取的時候不對,為此還在好多地方
提問,但是沒有回答對的,折騰了好幾天該了保存文件為./temp目錄下才可以的,提醒別的朋友別和我一樣瞎轉(zhuǎn)


復制代碼 代碼如下:


<?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);
?>


到此,關(guān)于“如何使用PHP curl模擬瀏覽器抓取網(wǎng)站信息”的學習就結(jié)束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續(xù)學習更多相關(guān)知識,請繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>

網(wǎng)站標題:如何使用PHPcurl模擬瀏覽器抓取網(wǎng)站信息-創(chuàng)新互聯(lián)
文章網(wǎng)址:http://www.muchs.cn/article8/dhjcip.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供靜態(tài)網(wǎng)站、App開發(fā)網(wǎng)站建設、小程序開發(fā)、微信小程序、面包屑導航

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

小程序開發(fā)