陳 銀,劉 維,熊偉程(貴州師范學(xué)院數(shù)學(xué)與計(jì)算機(jī)科學(xué)學(xué)院,貴陽(yáng) 550018)
校園信息推送平臺(tái)技術(shù)實(shí)現(xiàn)
陳銀,劉維,熊偉程
(貴州師范學(xué)院數(shù)學(xué)與計(jì)算機(jī)科學(xué)學(xué)院,貴陽(yáng)550018)
摘要:利用網(wǎng)絡(luò)爬蟲(chóng)抓取想要的HTML頁(yè)面,用正則表達(dá)式解析想要的HTML頁(yè)面標(biāo)簽,以JAVA或者PHP來(lái)實(shí)現(xiàn)想要信息的功能,利用微信公眾平臺(tái)呈現(xiàn)信息,達(dá)到信息推送目的。
關(guān)鍵詞:信息推送;網(wǎng)絡(luò)爬蟲(chóng);正則表達(dá)式;PHP與Java開(kāi)發(fā);微信公眾平臺(tái)
在科技飛速發(fā)展的今天以及“互聯(lián)網(wǎng)+”的時(shí)代,各種各樣的信息對(duì)我們來(lái)說(shuō)顯得非常重要。從學(xué)生角度來(lái)講,主要有幾大塊,第一是學(xué)習(xí)資料信息;第二是考試資料信息;第三是考證信息;第四是生活?yuàn)蕵?lè)方面的信息。對(duì)于這些信息,我們是如何獲取呢?通常有報(bào)紙、pc機(jī)網(wǎng)絡(luò)、手機(jī)App等。
對(duì)于報(bào)紙,現(xiàn)在好多學(xué)生都不喜歡看了,而手機(jī)App,獲取信息,還得安裝一個(gè)軟件,這點(diǎn)好多人都不愿意,太麻煩了,對(duì)于電腦網(wǎng)絡(luò)方式,不是每個(gè)人都有計(jì)算機(jī)。隨著手機(jī)特別是智能機(jī)的普及,從手機(jī)獲取信息成為最佳選擇,但是又不要用App那樣麻煩,這就出現(xiàn)了一個(gè)新型方式,就是近年興起的微信平臺(tái)。微信,目前有智能手機(jī)的基本上都有安裝,故微信公眾平臺(tái)是一個(gè)不錯(cuò)的選擇。
微信平臺(tái)除了聊天外,其實(shí)重要的就是微信公眾號(hào),微信公眾號(hào)是我們獲取信息的途徑之一,微信公眾平臺(tái)的開(kāi)發(fā)就是我們實(shí)現(xiàn)信息推送的方式。而將各種各樣的信息匯集在一起,這其中的重中之重,就是網(wǎng)絡(luò)爬蟲(chóng)技術(shù)。
網(wǎng)絡(luò)爬蟲(chóng)是將很多網(wǎng)頁(yè)的信息進(jìn)行抓取,存儲(chǔ)在自己的數(shù)據(jù)庫(kù),再進(jìn)行集中顯示的過(guò)程。對(duì)于網(wǎng)絡(luò)爬蟲(chóng)的技術(shù)實(shí)現(xiàn),目前有很多種,常見(jiàn)的是Java和php,兩種語(yǔ)言實(shí)現(xiàn)各有其特點(diǎn),但都是跨平臺(tái)性很好的語(yǔ)言,當(dāng)然也有的人用.net實(shí)現(xiàn),但是.net不開(kāi)源,不跨平臺(tái),而我們的服務(wù)器絕大多數(shù)都是Linux系統(tǒng),故.net不是一個(gè)實(shí)際生產(chǎn)的好的語(yǔ)言。
正則表達(dá)式就是記錄文本規(guī)則的代碼,包括普通字符和特殊字符(元字符和元字符序列),用來(lái)進(jìn)行文本信息匹配的一種工具,在編程中經(jīng)常用到,比如”d”用來(lái)匹配0~9的數(shù)字,正則表達(dá)式不但可以匹配數(shù)字,字母,還可以匹配HTM L頁(yè)面信息。
對(duì)于php實(shí)現(xiàn)網(wǎng)絡(luò)爬蟲(chóng),只是網(wǎng)絡(luò)爬蟲(chóng)的實(shí)現(xiàn)語(yǔ)言之一。PHP語(yǔ)言是開(kāi)源免費(fèi)的,不需要太多成本,入門相對(duì)會(huì)低一些,對(duì)于新手來(lái)說(shuō)會(huì)容易些。
網(wǎng)絡(luò)爬蟲(chóng)實(shí)現(xiàn)的一個(gè)重要技術(shù)就是正則表達(dá)式,PHP實(shí)現(xiàn)網(wǎng)絡(luò)爬蟲(chóng)就是依賴正則表達(dá)式。
網(wǎng)絡(luò)爬蟲(chóng)不但可以用PHP實(shí)現(xiàn)。還可以用JAVA實(shí)現(xiàn),而實(shí)際應(yīng)用中大多也是用的是JAVA來(lái)實(shí)現(xiàn)的。JAVA實(shí)現(xiàn)同樣也用到了正則表達(dá)式,可以說(shuō)正則表達(dá)式是網(wǎng)絡(luò)爬蟲(chóng)等技術(shù)不可或缺的工具。
我們都知道JAVA語(yǔ)言比PHP更強(qiáng)大,支持的接口也多,這樣在微信開(kāi)發(fā)的過(guò)程中會(huì)容易些,故我們校園信息推送平臺(tái)的實(shí)現(xiàn)選用JAVA來(lái)實(shí)現(xiàn)。
微信公眾平臺(tái)是近幾年才興起的新鮮平臺(tái),就是借助微信客戶端來(lái)開(kāi)發(fā)自己的應(yīng)用程序,這樣用戶在不安裝客戶端的情況下,就可以使用自己的應(yīng)用,這在移動(dòng)應(yīng)用時(shí)代是不錯(cuò)的選擇。微信公眾平臺(tái)的開(kāi)發(fā)其實(shí)就是移動(dòng)應(yīng)用程序的開(kāi)發(fā),屬于二次開(kāi)發(fā),自定義菜單,加上調(diào)用接口,整合前面開(kāi)發(fā)的程序,就可以實(shí)現(xiàn)了。
網(wǎng)絡(luò)爬蟲(chóng)是校園信息推送平臺(tái)的核心技術(shù),有了這個(gè)技術(shù),就可以自動(dòng)的抓取想要的信息,再加上用JAVA和JSP來(lái)加以顯示,微信來(lái)呈現(xiàn),這樣信息推送就實(shí)現(xiàn)了。
參考文獻(xiàn):
[1]福達(dá),楊濤.正則表達(dá)式必知必會(huì)(修訂版)[M].人民郵電出版社,2015.
[2]E.F.Friedl.精通正則表達(dá)式(第三版)[M].電子工業(yè)出版社,2012.
[3]柳峰.微信公眾平臺(tái)應(yīng)用開(kāi)發(fā):方法、技巧與案例[M].機(jī)械工業(yè)出版社,2014.
[4]王振東.自己動(dòng)手寫網(wǎng)絡(luò)爬蟲(chóng)[M].清華大學(xué)出版社,2010.
[5]鄭阿奇.Java EE項(xiàng)目開(kāi)發(fā)教程(第2版)[M].電子工業(yè)出版社,2013.
項(xiàng)目基金:貴州省大學(xué)生創(chuàng)新創(chuàng)業(yè)建設(shè)項(xiàng)目(項(xiàng)目編號(hào):201414223002)
作者簡(jiǎn)介:陳銀(1992—),男,貴州人,貴州師范學(xué)院計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)學(xué)生。