成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

巧妙運用PHP函數實現采集器

開發 后端
文章這里巧妙利用PHP函數中的file_get_contents()和preg_match_all()實現采集器,希望對大家有幫助。

PHP經過長時間的發展,很多用戶都很了解PHP了,我們現在可以利用PHP函數實現采集器程序。何為采集器,通常又叫小偷程序,主要是用來抓取別人網頁內容的。關于采集器的制作,其實并不難,就是遠程打開要采集的網頁,然后用正則表達式將需要的內容匹配出來,只要稍微有點正則表達式的基礎,都能做出自己的采集器來的。

#T#前幾天做了個小說連載的程序,因為怕更新麻煩,順帶就寫了個采集器,采集八路中文網的,功能比較簡單,不能自定義規則,不過大概思路都在里面了,自定義規則可以自己來擴展。用php來做采集器主要用到兩個PHP函數:file_get_contents()和preg_match_all(),前一個是遠程讀取網頁內容的,不過只在php5以上的版本才能用,后一個是正則函數,用來提取需要的內容的。面就一步一步來講功能實現。因為是采集小說,所以首先要將書名、作者、類型這三個提取出來,別的信息可根據需要提取。

這樣還不夠,還需要一個切取PHP函數:

  1. function cut($string,$start,$end){     
  2. $message = explode($start,$string);     
  3. $message = explode($end,$message[1]); return $message[0];}其中$string為要被切取的內容,$start為開始的地方,$end為結束的地方。取出分類號:     
  4.  
  5. $start = "Html/Book/";     
  6. $end    
  7. "List.shtm";     
  8. $typeid = cut($typeid[0][0],$start,$end);     
  9. $typeid = explode("/",$typeid);[/php]     
  10.  
  11. 這樣,$typeid[0]就是我們要找的分類號了。方法如下:     
  12.  
  13. $ustart = "\"";     
  14. $uend    
  15. "\"";     
  16. //t表示title的縮寫     
  17. $tstart = ">";     
  18. $tend    
  19. "<";     
  20. //取路徑,例如:123.shtm,2342.shtm,233.shtm     
  21. preg_match_all("/\"[0-9]{1,}\.(shtm)\"/is",$chapterurl,$url);     
  22. //取標題,例如:***章 九世善人     
  23. preg_match_all("/<a href=\"[0-9]{1,}\.shtm\"(.*?)\<\/a>/is",$file,$title);     
  24. $countcountcount = count($url[0]);     
  25. for($i=0;$i<=$count;$i++)     
  26. {     
  27. $u = cut($url[0][$i],$ustart,$uend);     
  28. $t = cut($title[0][$i],$tstart,$tend);     
  29. $array[$u] = $t;     
  30. }    

$array數組就是所有的章節地址了,到這里,采集器就完成一半了,剩下的就是循環打開每個章節地址,讀取,然后將內容匹配出來。這個比較簡單,這里就不詳細敘述了。好了,今天就先寫到這吧,***次寫這么長的文章,語言組織方面難免有問題,還請大家多包涵!

責任編輯:田樹 來源: it168
相關推薦

2009-12-10 10:18:05

PHP讀取文件

2009-11-25 14:36:39

PHP函數usort(

2011-03-17 17:30:06

NginxiptablesDDOS

2009-12-07 11:31:51

PHP分類列表

2009-11-24 11:00:05

PHP函數Date()

2009-12-08 16:19:21

PHP函數pack

2009-12-04 09:41:25

PHP函數flush(

2009-12-02 16:38:26

PHP發送郵件函數

2009-12-03 20:15:02

PHP rmdir()

2009-11-13 11:18:22

ADO.NET修改數據

2021-12-09 15:30:12

采集器開源-iLogtail

2009-11-24 18:08:39

PHP函數array_

2010-08-31 13:56:38

PHP5多線程

2009-12-04 18:05:05

PHP stristr

2009-12-01 13:29:04

PHP ini_set

2009-11-27 16:35:01

php函數mkdir

2009-12-10 15:33:02

PHP函數fgets

2012-01-04 11:09:10

Java采集器

2011-02-18 16:07:46

微軟 SQL Serv

2019-01-24 15:30:09

TensorFlow機器學習
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 免费看黄色小视频 | 欧美日韩高清免费 | 色免费看 | 国产精品av久久久久久毛片 | 91国在线高清视频 | 91精品国产91久久久久久 | 天天插天天操 | 欧美福利久久 | 亚洲日本中文 | 久久精品国产一区二区电影 | 黑人一级黄色大片 | 亚洲国产精品成人无久久精品 | 国产精品成人国产乱 | 国产99热在线 | 国产中文字幕在线观看 | 亚洲乱码一区二区三区在线观看 | 国产乱码久久久久久一区二区 | 精品一区二区三区在线观看国产 | 四虎永久免费影院 | 精品久久香蕉国产线看观看亚洲 | 成人欧美一区二区三区视频xxx | 日日夜夜天天 | 亚洲一二三视频 | 中文成人无字幕乱码精品 | 在线观看免费av网 | av在线影院 | 日韩毛片在线观看 | 欧美激情亚洲激情 | 日韩一区二区三区四区五区 | 久久不卡 | 99亚洲 | 成人国产精品久久久 | 日韩精品区| 一区二区三区国产好 | 中文字幕一区二区三区在线视频 | 欧美一级在线观看 | chengrenzaixian | 黄色大片免费网站 | 一区二区日韩 | 欧美1级| 欧美在线视频一区 |