1.一種爬取動(dòng)態(tài)網(wǎng)頁(yè)的方法,其特征在于,所述方法包括:
在獲取需要爬取的網(wǎng)頁(yè)的統(tǒng)一資源定位符URL之后,利用無(wú)界面瀏覽器爬取獲取的URL的網(wǎng)頁(yè)內(nèi)容;
利用解析引擎對(duì)爬取的網(wǎng)頁(yè)內(nèi)容進(jìn)行解析;
若所述網(wǎng)頁(yè)內(nèi)容中含有觸發(fā)加載動(dòng)態(tài)數(shù)據(jù)的特征信息,則通過(guò)所述無(wú)界面瀏覽器的模擬點(diǎn)擊事件接口觸發(fā)所述特征信息對(duì)應(yīng)的點(diǎn)擊事件;
爬取所述點(diǎn)擊事件產(chǎn)生的動(dòng)態(tài)數(shù)據(jù)。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,在爬取所述點(diǎn)擊事件產(chǎn)生的動(dòng)態(tài)數(shù)據(jù)之后,所述方法還包括:
利用解析引擎對(duì)所述動(dòng)態(tài)數(shù)據(jù)進(jìn)行解析;
若所述動(dòng)態(tài)數(shù)據(jù)中含有特征信息,則繼續(xù)通過(guò)所述模擬點(diǎn)擊事件接口觸發(fā)所述特征信息對(duì)應(yīng)的點(diǎn)擊事件。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,在利用解析引擎對(duì)爬取的網(wǎng)頁(yè)內(nèi)容進(jìn)行解析之后,所述方法還包括:
將解析出的除所述特征信息之外的數(shù)據(jù)以及當(dāng)前爬取的URL進(jìn)行存儲(chǔ);
在利用解析引擎對(duì)所述動(dòng)態(tài)數(shù)據(jù)進(jìn)行解析之后,所述方法還包括:
將解析出的除所述特征信息之外的數(shù)據(jù)進(jìn)行存儲(chǔ)。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,在將解析出的除所述特征信息之外的數(shù)據(jù)以及當(dāng)前爬取的URL進(jìn)行存儲(chǔ)之后,所述方法還包括:
檢測(cè)所述解析出的除所述特征信息之外的數(shù)據(jù)中是否含有其他URL;
若含有其他URL,則利用所述無(wú)界面瀏覽器爬取所述其他URL的網(wǎng)頁(yè)內(nèi)容。
5.根據(jù)權(quán)利要求3所述的方法,其特征在于,在將解析出的除所述特征信息之外的數(shù)據(jù)以及當(dāng)前爬取的URL進(jìn)行存儲(chǔ)之后,所述方法還包括:
在后續(xù)爬取URL的網(wǎng)頁(yè)內(nèi)容之前,檢測(cè)存儲(chǔ)的已爬URL中是否含有待爬取的URL;
若含有所述待爬取的URL,則放棄爬取所述待爬取的URL的網(wǎng)頁(yè)內(nèi)容;
若沒(méi)有所述待爬取的URL,則利用所述無(wú)界面瀏覽器爬取所述待爬取的URL的網(wǎng)頁(yè)內(nèi)容。
6.根據(jù)權(quán)利要求3所述的方法,其特征在于,在將解析出的除所述特征信息之外的數(shù)據(jù)進(jìn)行存儲(chǔ)之后,所述方法還包括:
將所述解析出的除所述特征信息之外的數(shù)據(jù)以日志格式進(jìn)行導(dǎo)出,獲得網(wǎng)頁(yè)爬取日志。
7.根據(jù)權(quán)利要求1至6中任一項(xiàng)所述的方法,其特征在于,所述無(wú)界面瀏覽器為phantom JS瀏覽器。
8.一種爬取動(dòng)態(tài)網(wǎng)頁(yè)的裝置,其特征在于,所述裝置包括:
爬取單元,用于在獲取需要爬取的網(wǎng)頁(yè)的統(tǒng)一資源定位符URL之后,利用無(wú)界面瀏覽器爬取獲取的URL的網(wǎng)頁(yè)內(nèi)容;
解析單元,用于利用解析引擎對(duì)所述爬取單元爬取的網(wǎng)頁(yè)內(nèi)容進(jìn)行解析;
觸發(fā)單元,用于當(dāng)所述解析單元的解析結(jié)果為所述網(wǎng)頁(yè)內(nèi)容中含有觸發(fā)加載動(dòng)態(tài)數(shù)據(jù)的特征信息時(shí),通過(guò)所述無(wú)界面瀏覽器的模擬點(diǎn)擊事件接口觸發(fā)所述特征信息對(duì)應(yīng)的點(diǎn)擊事件;
所述爬取單元還用于爬取所述觸發(fā)單元觸發(fā)的所述點(diǎn)擊事件產(chǎn)生的動(dòng)態(tài)數(shù)據(jù)。
9.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述解析單元還用于在所述爬取單元爬取所述點(diǎn)擊事件產(chǎn)生的動(dòng)態(tài)數(shù)據(jù)之后,利用解析引擎對(duì)所述動(dòng)態(tài)數(shù)據(jù)進(jìn)行解析;
觸發(fā)單元還用于當(dāng)所述解析單元的解析結(jié)果為所述動(dòng)態(tài)數(shù)據(jù)中含有特征信息時(shí),繼續(xù)通過(guò)所述模擬點(diǎn)擊事件接口觸發(fā)所述特征信息對(duì)應(yīng)的點(diǎn)擊事件。
10.根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述裝置還包括:
存儲(chǔ)單元,用于在利用解析引擎對(duì)爬取的網(wǎng)頁(yè)內(nèi)容進(jìn)行解析之后,將解析出的除所述特征信息之外的數(shù)據(jù)以及當(dāng)前爬取的URL進(jìn)行存儲(chǔ);
所述存儲(chǔ)單元還用于在利用解析引擎對(duì)所述動(dòng)態(tài)數(shù)據(jù)進(jìn)行解析之后,將解析出的除所述特征信息之外的數(shù)據(jù)進(jìn)行存儲(chǔ)。