2023-11-28 分類: 網(wǎng)站建設(shè)
收集器,通常稱為小偷程序,主要用于抓取他人網(wǎng)頁的內(nèi)容。關(guān)于集熱器的制作,其實(shí)并不難。就是遠(yuǎn)程打開要采集的網(wǎng)頁,然后用正則表達(dá)式匹配需要的內(nèi)容。只要你有一點(diǎn)基本的正則表達(dá)式,你就可以制作自己的收集器。.
前幾天,做了一個(gè)小說連載程序。因?yàn)榕赂侣闊?,順便寫了個(gè)收集器收集八通中文網(wǎng)。功能比較簡(jiǎn)單,不能自定義規(guī)則。你可以自己擴(kuò)展。
使用php作為收集器主要使用()和()兩個(gè)函數(shù),前者是遠(yuǎn)程讀取網(wǎng)頁內(nèi)容,但只能在php5以上版本使用網(wǎng)站模板,后者是常規(guī)函數(shù),用于提取所需的內(nèi)容。
下面逐步介紹功能實(shí)現(xiàn)。
因?yàn)槭切≌f合集,所以必須先提取出書名、作者、體裁,其他信息可以根據(jù)需要提取。
這里是《回歸明朝當(dāng)太子》的目標(biāo),首先打開參考書目頁面,鏈接:
再翻幾本書,你會(huì)發(fā)現(xiàn)書名的基本格式是:ISbN/.aspx,所以我們可以做一個(gè)起始頁,定義一個(gè),用它來輸入要收藏的書號(hào)。以后可以用$['']等格式接收需要收藏的書號(hào)。收到書號(hào)后,接下來就是構(gòu)建書目頁面:$url=$['']/.aspx,當(dāng)然這里是個(gè)例子,主要是為了解釋方便,最好查一下$['' ] 合法性。
構(gòu)建好 URL 后,就可以開始收集圖書信息了。使用()函數(shù)打開參考書目頁面:$=($url),這樣就可以讀出參考書目頁面的內(nèi)容了。下一步是匹配標(biāo)題、作者和流派等信息。這里以書名為例網(wǎng)站制作,其他都一樣。打開參考書目頁面,查看源文件,找到《回明為王》,這是要提取的書名。正則表達(dá)式提取書名:/(.*?)\/is,使用()函數(shù)提取書名:("/(.*?)\/is",$,$); 所以 $[0] [0] 的內(nèi)容就是我們想要的標(biāo)題(函數(shù)的用法可以百度查到,這里就不詳細(xì)解釋了)。取出圖書信息后,下一步是取章節(jié)的內(nèi)容。取章節(jié)內(nèi)容,首先要找到每一章節(jié)的地址,然后遠(yuǎn)程打開章節(jié),使用正則取出內(nèi)容php采集代碼,存入庫或者直接生成html靜態(tài)文件。這是章節(jié)列表的地址: 可以看到這個(gè)和參考書目頁面一樣,可以定期找到:分類號(hào)/書號(hào)/List.shtm。之前已經(jīng)獲得了書號(hào)。這里的關(guān)鍵是找到分類號(hào)。分類號(hào)可以在之前的參考書目頁面上找到。提取分類號(hào):存入庫或直接生成html靜態(tài)文件。這是章節(jié)列表的地址: 可以看到這個(gè)和參考書目頁面一樣,可以定期找到:分類號(hào)/書號(hào)/List.shtm。之前已經(jīng)獲得了書號(hào)。這里的關(guān)鍵是找到分類號(hào)。分類號(hào)可以在之前的參考書目頁面上找到。提取分類號(hào):存入庫或直接生成html靜態(tài)文件。這是章節(jié)列表的地址: 可以看到這個(gè)和參考書目頁面一樣php采集代碼,可以定期找到:分類號(hào)/書號(hào)/List.shtm。之前已經(jīng)獲得了書號(hào)。這里的關(guān)鍵是找到分類號(hào)。分類號(hào)可以在之前的參考書目頁面上找到。提取分類號(hào):
("/Html\/book\/[0-9]{1,}\/[0-9]{1,}\/List\.shtm/is",$,$); 這還不夠,還需要一個(gè) cut 函數(shù):
[復(fù)制pHp代碼] [-] pHp代碼如下:
引用如下:
切($,$,$end){
$ = ($,$);
$ = ($end,$[1]); $[0];} 其中$是要剪切的內(nèi)容,$是開頭,$end是結(jié)尾。取出分類號(hào):
$ = "HTML/書/";
$結(jié)束
= "列表.shtm";
$ = cut($[0][0],$,$end);
$ = ("/",$);[/php]
這樣,$[0] 就是我們要找的分類號(hào)。下一步是構(gòu)造章節(jié)列表的地址:$ = $[0]/$['']/List.shtm。有了這個(gè),你可以找到每一章的地址。方法如下:
引用如下:
$ = "\"";
$uend
= "\"";
//t的縮寫
$ = ">";
$傾向于
= "
新聞標(biāo)題:php采集代碼前幾天做了個(gè)小說連載的程序,抓取別人網(wǎng)頁內(nèi)容php采集百度新聞標(biāo)題
網(wǎng)站URL:http://jinyejixie.com/news24/297174.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供建站公司、網(wǎng)站設(shè)計(jì)公司、外貿(mào)網(wǎng)站建設(shè)、企業(yè)網(wǎng)站制作、網(wǎng)站營(yíng)銷、ChatGPT
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容