採集已經不是什麼新名詞了,很多站長為了省事,也侷限於人力的缺乏,使用程式來給自己
的**添磚加瓦,比如本人的個人**
西西弗斯網也採集了大量的新聞,那麼如果實現呢?今天我們運用php來實現這個功能.
談到採集,我們不得不說兩個東西,第乙個是如何獲取遠端**的源**,這個可以通過php的乙個擴充套件curl來獲取,另乙個是如果去匹配你需要的資訊,這個的解決辦法是正規表示式.
windows下開啟curl的方法如下:
1、拷貝php目錄中的libeay32.dll, ssleay32.dll, php5ts.dll, php_curl.dll檔案到 system32 目錄。
2、修改php.ini:配置好 extension_dir ,去掉 extension = php_curl.dll 前面的分號。
3、重起apache。
linux下開啟curl的方法如下:
進入安裝 原php 的原始碼目錄,
cd ext
cd curl
phpize
./configure --with-curl =dir
make
就會在phpdir/ext/curl /moudles/下生成curl .so的檔案。
複製curl .so檔案到extensions的配置目錄,修改php .ini就好了.
然後你就可以利用curl來獲取到指定url的網頁原始碼了,這裡給大家乙個封裝好的函式:
function getwebcontent($url)
接下來就應該說到php中的正規表示式了:
1.中括號
[0-9]匹配0-9
[a-z]匹配a-z小寫字母
[a-z]匹配a-z大寫字母
[a-za-z]匹配所有大小寫字母
可以使用ascii來制定更多
2.量詞
p+匹配至少乙個含p的字串
p*陪陪任何包含0個或多個p的字串
p?匹配任何包含0個或乙個p的字串
p匹配包含2個p的序列的字串
p匹配任何包含2個或3個的字串
p$匹配任何以p結尾的字串
^p匹配任何以p開頭的字串
[^a-za-z]匹配任何不包含a-za-z的字串
p.p匹配任何包含p、接下來是任何字元、再接下來有又是p的字串
^.$匹配任何值包含2個字元的字串
(.*)b>匹配任何被》包圍的字串
p(hp)*匹配任何乙個包含p,後面是多個或0個hp的字串
3.預定義字元範圍
[:alpha:]同[a-za-z]
[:alnum:]同[a-za-z0-9]
[:cntrl:]匹配控制字元,比如製表符,反斜槓,退格符
[:digit:]同[0-9]
[:graph:]所有ascii33~166範圍內可以列印的字元
[:lower:]同[a-z]
[:punct:]標點符號
[:upper:]同[a-z]
[:space:]空白字元,可以是空格、水平製表符、換行、換頁、回車
[:xdigit:]十六進製制符同[a-fa-f0-9]
然後如何實現比較實時的同步呢,這可以利用windows下的任務計畫或linux下的crontab 了,定時(比如十分鐘)執行這個程式,這樣,你就不再愁**沒有內容了,哈哈,另外本人開了個西西弗斯工作室(
北京**建設),我們開發了乙個系統,不僅能夠採集資訊,而且能自動地進行再加工,進行偽原創,這樣就更符合搜尋引擎的品味了,讓你的**瘋狂地被收錄吧,另外可以加我的q376504340討論技術性話題.
獲取新浪網的鏈結資訊
sgmllib.py 包含乙個重要的類 sgmlparser。sgmlparser 將 html 分解成有用的片段,比如開始標記和結束標記。一旦它成功地分解出某個資料為乙個有用的片段,它會根據 所發現的資料,呼叫乙個自身內部的方法。為了使用這個分析器,您需要子類化 sgml parser類,並且覆蓋...
ZT 剛從新浪網看到的,極有感觸
母親和mm,是我生命中最重要的兩個人。她們都是無可挑剔的,都很愛我,不同的是母親養育我20年,而mm愛我僅4年。而我,對她們卻相差甚遠。想起來夜不能寐,汗顏。1.和母親在一起的時候,常常想起mm 但和mm在一起的時候,只是偶爾談到母親。2.給mm打 不把一張卡打完決不罷休 給母親打 聽她叮囑了再叮囑...
新浪網中的一角 關於陳氏的言論
很欣賞這位老兄,中國人素質偏下是乙個根本性的原因 一群卑鄙的槍手還在叫囂 我說的骯髒不是這收購本身 而是盛大的發家史,多少億多少億都是孩子們 的零花錢,與他們父母口袋裡的血汗錢 孩子沒分辨能力,沉迷網遊不全是孩子的錯 你盛大悄悄賺這髒錢也就算了 為他在這裡賣命發貼的槍手們 將來你們的孩子若是沉迷在他...