新聞中心
使用PHP的cURL庫(kù)可以簡(jiǎn)單和有效地去抓網(wǎng)頁(yè)。你只需要運(yùn)行一個(gè)腳本,然后分析一下你所抓取的網(wǎng)頁(yè),然后就可以以程序的方式得到你想要的數(shù)據(jù)了。無(wú)論是你想從從一個(gè)鏈接上取部分?jǐn)?shù)據(jù),或是取一個(gè)XML文件并把其導(dǎo)入數(shù)據(jù)庫(kù),那怕就是簡(jiǎn)單的獲取網(wǎng)頁(yè)內(nèi)容,cURL 是一個(gè)功能強(qiáng)大的PHP庫(kù)。本文主要講述如果使用這個(gè)PHP庫(kù)。

公司主營(yíng)業(yè)務(wù):網(wǎng)站建設(shè)、成都網(wǎng)站制作、移動(dòng)網(wǎng)站開(kāi)發(fā)等業(yè)務(wù)。幫助企業(yè)客戶(hù)真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競(jìng)爭(zhēng)能力。創(chuàng)新互聯(lián)建站是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開(kāi)放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對(duì)我們的高要求,感謝他們從不同領(lǐng)域給我們帶來(lái)的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶(hù)帶來(lái)驚喜。創(chuàng)新互聯(lián)建站推出和政免費(fèi)做網(wǎng)站回饋大家。
啟用 cURL 設(shè)置
首先,我們得先要確定我們的PHP是否開(kāi)啟了這個(gè)庫(kù),你可以通過(guò)使用php_info()函數(shù)來(lái)得到這一信息。
﹤?php |
如果你可以在網(wǎng)頁(yè)上看到下面的輸出,那么表示cURL庫(kù)已被開(kāi)啟。
如果你看到的話(huà),那么你需要設(shè)置你的PHP并開(kāi)啟這個(gè)庫(kù)。如果你是在Windows平臺(tái)下,那么非常簡(jiǎn)單,你需要改一改你的php.ini文件的設(shè)置,找到php_curl.dll,并取消前面的分號(hào)注釋就行了。如下所示:
//取消下在的注釋 |
如果你是在Linux下面,那么,你需要重新編譯你的PHP了,編輯時(shí),你需要打開(kāi)編譯參數(shù)——在configure命令上加上“–with-curl” 參數(shù)。
一個(gè)小示例
如果一切就緒,下面是一個(gè)小例程:
﹤?php // 設(shè)置你需要抓取的URL // 設(shè)置header // 設(shè)置cURL 參數(shù),要求結(jié)果保存到字符串中還是輸出到屏幕上。 // 運(yùn)行cURL,請(qǐng)求網(wǎng)頁(yè) // 關(guān)閉URL請(qǐng)求 // 顯示獲得的數(shù)據(jù) |
如何POST數(shù)據(jù)
上面是抓取網(wǎng)頁(yè)的代碼,下面則是向某個(gè)網(wǎng)頁(yè)P(yáng)OST數(shù)據(jù)。假設(shè)我們有一個(gè)處理表單的網(wǎng)址http://www.example.com/sendSMS.php,其可以接受兩個(gè)表單域,一個(gè)是電話(huà)號(hào)碼,一個(gè)是短信內(nèi)容。
﹤?php |
從上面的程序我們可以看到,使用CURLOPT_POST設(shè)置HTTP協(xié)議的POST方法,而不是GET方法,然后以CURLOPT_POSTFIELDS設(shè)置POST的數(shù)據(jù)。
關(guān)于代理服務(wù)器
下面是一個(gè)如何使用代理服務(wù)器的示例。請(qǐng)注意其中高亮的代碼,代碼很簡(jiǎn)單,我就不用多說(shuō)了。
﹤?php |
關(guān)于SSL和Cookie
關(guān)于SSL也就是HTTPS協(xié)議,你只需要把CURLOPT_URL連接中的http://變成https://就可以了。當(dāng)然,還有一個(gè)參數(shù)叫CURLOPT_SSL_VERIFYHOST可以設(shè)置為驗(yàn)證站點(diǎn)。
關(guān)于Cookie,你需要了解下面三個(gè)參數(shù):
CURLOPT_COOKIE,在當(dāng)面的會(huì)話(huà)中設(shè)置一個(gè)cookie
CURLOPT_COOKIEJAR,當(dāng)會(huì)話(huà)結(jié)束的時(shí)候保存一個(gè)Cookie
CURLOPT_COOKIEFILE,Cookie的文件。
HTTP服務(wù)器認(rèn)證
最后,我們來(lái)看一看HTTP服務(wù)器認(rèn)證的情況。
﹤?php $data = curl_exec(); |
關(guān)于其它更多的內(nèi)容,請(qǐng)參看相關(guān)的cURL手冊(cè)。
網(wǎng)頁(yè)題目:PHP的cURL庫(kù)功能簡(jiǎn)介:抓取網(wǎng)頁(yè),POST數(shù)據(jù)及其他
網(wǎng)頁(yè)地址:http://m.fisionsoft.com.cn/article/cohdgpc.html


咨詢(xún)
建站咨詢(xún)
