PHP使用curl制作簡易百度搜索
這幾天研究了一下php中的curl類庫,做了一個(gè)簡單的百度搜索,先上代碼
<div style="width:200px;height:100px;"> <div>百度搜索</div> <form action="" method="get"> <input type="text" name="key"> <input type="submit" value="搜索"> </form> </div> <?php $k = ''; $k = !empty($_GET['key'])?$_GET['key']:''; session_start(); $_SESSION['key'] = $k; $curl = curl_init(); // 設(shè)置你需要抓取的URL for($i = 0;$i<2;$i++){ curl_setopt($curl, CURLOPT_URL, "http://www.baidu.com/s?wd={$_SESSION['key']}&pn={$i}"); // 設(shè)置header curl_setopt($curl, CURLOPT_HEADER, 1); // 設(shè)置cURL 參數(shù),要求結(jié)果保存到字符串中還是輸出到屏幕上。 curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); // 運(yùn)行cURL,請(qǐng)求網(wǎng)頁 $data = curl_exec($curl); $pre = '/<h3 class="t"><a.*?href = "(.*?)".*?target="_blank".*?>(.*?)<\/a><\/h3>/s'; preg_match_all($pre,$data,$match); foreach ($match[1] as $k => $v) { ?> <div style="font-size:20px;color:red;"> <a href="<?php echo $v;?>" target="_blank"><?php echo strip_tags($match[2][$k]);?></a> </div> <?php } } curl_close($curl); ?>
經(jīng)過分析百度的搜索時(shí)的url發(fā)現(xiàn)有一個(gè)規(guī)律
https://www.baidu.com/s?wd=搜索的關(guān)鍵字
但是我發(fā)現(xiàn)使用https協(xié)議后不能夠獲得百度上的數(shù)據(jù)于是改為http://www.baidu.com?wd=搜索的關(guān)鍵字就可以啦!!
效果圖如下:
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- php實(shí)現(xiàn)的用戶查詢類實(shí)例
- php實(shí)現(xiàn)的Curl封裝類Curl.class.php用法實(shí)例分析
- PHP封裝CURL擴(kuò)展類實(shí)例
- php的curl封裝類用法實(shí)例
- php基于curl重寫file_get_contents函數(shù)實(shí)例
- PHP中使用cURL實(shí)現(xiàn)Get和Post請(qǐng)求的方法
- 在PHP中使用curl_init函數(shù)的說明
- PHP中CURL的CURLOPT_POSTFIELDS參數(shù)使用細(xì)節(jié)
- php中使用Curl、socket、file_get_contents三種方法POST提交數(shù)據(jù)
- PHP擴(kuò)展CURL的用法詳解
- php基于curl實(shí)現(xiàn)的股票信息查詢類實(shí)例
相關(guān)文章
thinkPHP中create方法與令牌驗(yàn)證實(shí)例淺析
這篇文章主要介紹了thinkPHP中create方法與令牌驗(yàn)證,以一個(gè)簡單實(shí)例形式分析了thinkPHP中create方法與令牌驗(yàn)證增加表單安全性的相關(guān)技巧,代碼備有詳盡注釋說明,需要的朋友可以參考下2015-12-12PHP實(shí)現(xiàn)采集中國天氣網(wǎng)未來7天天氣
這篇文章主要介紹了PHP實(shí)現(xiàn)采集中國天氣網(wǎng)未來7天天氣方法,本文詳細(xì)的講解了需求的實(shí)現(xiàn),也可以做為學(xué)習(xí)PHP采集的入門教程,需要的朋友可以參考下2014-10-10Laravel 5.4前后臺(tái)分離,通過不同的二級(jí)域名訪問方法
今天小編就為大家分享一篇Laravel 5.4前后臺(tái)分離,通過不同的二級(jí)域名訪問方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-10-10thinkPHP使用post方式查詢時(shí)分頁失效的解決方法
這篇文章主要介紹了thinkPHP使用post方式查詢時(shí)分頁失效的解決方法,通過使用JavaScript動(dòng)態(tài)修改頁面元素結(jié)合thinkPHP查詢語句解決分頁失效的問題,需要的朋友可以參考下2015-12-12laravel-admin select框默認(rèn)選中的方法
今天小編就為大家分享一篇laravel-admin select框默認(rèn)選中的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-10-10