最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

thinkphp 抓取網(wǎng)站的內(nèi)容并且保存到本地的實(shí)例詳解

 更新時(shí)間:2017年08月25日 11:28:37   投稿:lqh  
這篇文章主要介紹了thinkphp 抓取網(wǎng)站的內(nèi)容并且保存到本地的實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下

thinkphp 抓取網(wǎng)站的內(nèi)容并且保存到本地的實(shí)例詳解

我需要寫這么一個(gè)例子,到電子課本網(wǎng)下載一本電子書。

電子課本網(wǎng)的電子書,是把書的每一頁當(dāng)成一個(gè)圖片,然后一本書就是有很多張圖片,我需要批量的進(jìn)行下載圖片操作。

下面是代碼部分:

 public function download() {
    $http = new \Org\Net\Http();
    $url_pref = "http://www.dzkbw.com/books/rjb/dili/xc7s/";
    $localUrl = "Public/bookcover/";
    $reg="|showImg\('(.+)'\);|";
    $i=1;
    
    do {
      $filename = substr("000".$i,-3).".htm";
      $ch = curl_init();
      curl_setopt($ch, CURLOPT_URL, $url_pref.$filename);
      curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
      curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
      curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
      $html = curl_exec($ch);
      curl_close($ch);
      
      $result = preg_match_all($reg,$html,$out, PREG_PATTERN_ORDER);
      if($result==1) {
        $picUrl = $out[1][0];
        $picFilename = substr("000".$i,-3).".jpg";
        $http->curlDownload($picUrl, $localUrl.$picFilename);
      }
      $i = $i+1;
    } while ($result==1);

    echo "下載完成";
  }

我這里是以人教版地理七年級(jí)地理上冊(cè)為例子 http://www.dzkbw.com/books/rjb/dili/xc7s/001.htm

網(wǎng)頁是從001.htm開始,然后數(shù)字一直加

每個(gè)網(wǎng)頁里面都有一張圖,就是對(duì)應(yīng)課本的內(nèi)容,以圖片的形式展示課本內(nèi)容

我的代碼是做了一個(gè)循環(huán),從第一頁開始抓,一直抓到找不到網(wǎng)頁里的圖片為止

抓到網(wǎng)頁的內(nèi)容后,把網(wǎng)頁里面的圖片抓取到本地服務(wù)器

抓取后的實(shí)際效果:

以上就是thinkphp 抓取網(wǎng)站的內(nèi)容并且保存到本地的實(shí)例詳解,如有疑問請(qǐng)留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

相關(guān)文章

  • 關(guān)于PHP中Session文件過多的問題及session文件保存位置

    關(guān)于PHP中Session文件過多的問題及session文件保存位置

    PHP的默認(rèn)機(jī)制:每一次php請(qǐng)求,會(huì)有1/100的概率(默認(rèn)值)觸發(fā)“session回收”。接下來通過本文給大家介紹關(guān)于PHP中Session文件過多的問題及session文件保存位置,需要的朋友參考下
    2016-03-03
  • PHP Pipeline 實(shí)現(xiàn)中間件的示例代碼

    PHP Pipeline 實(shí)現(xiàn)中間件的示例代碼

    這篇文章主要介紹了PHP Pipeline 實(shí)現(xiàn)中間件的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04
  • 完美的2個(gè)php檢測(cè)字符串是否是utf-8編碼函數(shù)分享

    完美的2個(gè)php檢測(cè)字符串是否是utf-8編碼函數(shù)分享

    這篇文章主要介紹了完美的2個(gè)php檢測(cè)字符串是否是utf-8編碼函數(shù)分享,一個(gè)比較強(qiáng)大、一個(gè)比較簡潔,需要的朋友可以參考下
    2014-07-07
  • php導(dǎo)入導(dǎo)出excel實(shí)例

    php導(dǎo)入導(dǎo)出excel實(shí)例

    使用PHPExcelphp導(dǎo)入excel、導(dǎo)出excel,支持office2007格式,同時(shí)兼容2003,具體看例子學(xué)習(xí)吧!
    2013-10-10
  • PHP+MySQL 制作簡單的留言本

    PHP+MySQL 制作簡單的留言本

    程序安裝界面 用于創(chuàng)建數(shù)據(jù)庫、表,以及動(dòng)態(tài)生成config.php文件.
    2009-11-11
  • ThinkPHP文件上傳實(shí)例教程

    ThinkPHP文件上傳實(shí)例教程

    這篇文章主要介紹了ThinkPHP文件上傳實(shí)現(xiàn)方法,是ThinkPHP程序開發(fā)中非常常見的一個(gè)技巧,需要的朋友可以參考下
    2014-08-08
  • Zend Framework入門教程之Zend_Session會(huì)話操作詳解

    Zend Framework入門教程之Zend_Session會(huì)話操作詳解

    這篇文章主要介紹了Zend Framework入門教程之Zend_Session會(huì)話操作,結(jié)合實(shí)例形式詳細(xì)分析了Zend_Session會(huì)話操作的具體使用技巧,需要的朋友可以參考下
    2016-12-12
  • php結(jié)合ajax實(shí)現(xiàn)手機(jī)發(fā)紅包的案例

    php結(jié)合ajax實(shí)現(xiàn)手機(jī)發(fā)紅包的案例

    發(fā)紅包功能,當(dāng)我們輸入紅包數(shù)量和總金額后,PHP會(huì)根據(jù)這兩個(gè)值進(jìn)行隨機(jī)分配每個(gè)金額,保證每個(gè)人都能領(lǐng)取到一個(gè)紅包,每個(gè)紅包金額不等,就是要求紅包金額要有差異,所有紅包金額總額應(yīng)該等于總金額。
    2016-10-10
  • 常用PHP框架功能對(duì)照表

    常用PHP框架功能對(duì)照表

    這篇文章主要介紹了常用PHP框架功能對(duì)照表,對(duì)于選擇PHP框架進(jìn)行開發(fā)時(shí)具有一定的參考價(jià)值,需要的朋友可以參考下
    2014-10-10
  • php數(shù)組合并的二種方法

    php數(shù)組合并的二種方法

    這篇文章主要介紹了php數(shù)組合并的二種方法,同時(shí)講了用加號(hào)和用array_merge合并數(shù)組的區(qū)別,需要的朋友可以參考下
    2014-03-03

最新評(píng)論

鲜城| 南澳县| 长宁县| 太康县| 屯昌县| 云阳县| 太原市| 广安市| 杂多县| 苍南县| 邹平县| 双峰县| 定结县| 叶城县| 城口县| 盐边县| 通州市| 临澧县| 获嘉县| 平潭县| 五常市| 崇文区| 波密县| 西丰县| 桃园市| 逊克县| 肥城市| 杭州市| 乌兰浩特市| 公主岭市| 鄯善县| 永川市| 桂阳县| 呼玛县| 衡东县| 友谊县| 云梦县| 奉贤区| 桦甸市| 贡嘎县| 阳高县|