能做什麼
PHP中的curl庫最基本的用途就是去簡單有效地*抓取網頁的內容*,然後利用抓取到的網頁資料經程式的方式進行處理和分析,最終得到你所想要的資料。當然了,這是最基本的用法,還有其他複雜有趣的用途,這取決於你的curl_setopt()行數的設定
怎麼用
首先,你的PHP中必須安裝有curl的擴充外掛程式,即phpinfo中有如下顯示然後就可以開始使用了,具體步驟: 1.用curl_init()初始化一個curl會話 2.通過curl_setopt()來設定需要的全部選項 3.用curl_exec()來執行會話 4.執行完後使用curl_close()關閉會話
ps:curl_setopt()是curl使用的關鍵,很多複雜的用法都是基於此
一個簡單的例子
//初始化一個curl對象$curl=curl_init("http://www.baidu.com");//將抓取的資料已文本的形式儲存$fp=fopen("test.txt");//設定curl_setopt()參數curl_setopt($ch,CURLOPT_FILE,$fp);curl_setopt($ch,CURLOPT_HEADER,0);//執行curl_exec();curl_exec($ch);//關閉curl會話curl_exec($ch);curl_close($ch);fclose($fp);
以上例子來自官方文檔
利用CURL實現抓取GOOGLE的host指令碼
//初始化curl對話$curl=curl_init();//設定curl_setoptcurl_setopt($curl, CURLOPT_URL, 'http://www.360kb.com/kb/2_122.html');curl_setopt($curl,CURLOPT_HEADER,0);curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);//執行curl$data=curl_exec($curl);//關閉curl資源curl_close($curl);//清楚HTML標籤$data=strip_tags($data);//處理的讀入資料$data=substr($data, strpos($data, '#google hosts'));$data=substr($data,0,strpos($data, '#google hosts 2015 end'));$data=str_replace(' ', ' ', $data);//寫入host$host=file_get_contents("C:\\Windows\\System32\\drivers\\etc\\HOSTS");$host=substr($host,0,strpos($host, '#google hosts'));$host.=$data;$fh=fopen("C:\\Windows\\System32\\drivers\\etc\\HOSTS", 'w');fwrite(fopen("C:\\Windows\\System32\\drivers\\etc\\HOSTS", 'w'), $host);fclose($fh);
以上就介紹了PHP中CURL應用與基於的修改Google實現,包括了方面的內容,希望對PHP教程有興趣的朋友有所協助。