java 利用chrome+puppeteer實現(xiàn)爬蟲

java在進行爬蟲過程中會因為網(wǎng)站作出反爬措施,導致抓取的內(nèi)容不全面忌警,所以需要利用模擬瀏覽器,打開頁面獲取到頁面的全部內(nèi)容。本文以騰訊新聞https://news.qq.com/為例筐喳。
環(huán)境配置參考http://www.reibang.com/p/6c3d90bef17f,可以配置nodejs的環(huán)境函喉。
一避归、使用jsoup解析網(wǎng)頁,當解析騰訊新聞時只能獲取到網(wǎng)頁的源碼管呵,其他與新聞相關的內(nèi)容一概獲取不到梳毙,從而無法抓取到有用的信息。

/**
 * 利用jsoup解析網(wǎng)頁
 * @param url
 * @return
 */
public static Document getDocumentByJsoup(String url){
    Document document = null;
    try {
        document = Jsoup.connect(url).timeout(15000).get();
        String text = document.getElementsByTag("body").text();
        System.err.println(text);
    } catch (IOException e) {
        e.printStackTrace();
    }
    return document;
}

測試獲取的結果捐下,獲取不到新聞列表


result.png

二账锹、利用chrome + nodejs的方式進行測試。

/**
 * 利用chrome方式獲取頁面信息
 * @param url
 * @return
 */
public static Document getDocument(String url){
    Document document = null;
    //chrome瀏覽器地址
    String chromePath = "你的chrome瀏覽器根目錄";
    
    //nodejs地址  + 截圖的js的地址(兩個需要在同一個目錄之下)
    String nodeJSPath = "nodejs根目錄地址   渲染頁面所需要的js根目錄地址.js";
    
    String BLANK = "    ";
    
    String exec =  nodeJSPath + BLANK + chromePath + BLANK + url;
    
    try {
        //執(zhí)行腳本命令
        Process process = Runtime.getRuntime().exec(exec);
        
        System.err.println("ecec =======> " + exec);
        
        InputStream is = process.getInputStream();
        document = Jsoup.parse(is, "UTF-8", url);
      
        try {
            process.waitFor();
        } catch (InterruptedException e) {
            e.printStackTrace();
        }


        process.destroy();
        process = null;
         
    } catch (Exception e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    return document;
}

運行獲取到的結果


result2.png

而在任務執(zhí)行過程中所需要的渲染頁面的js


render.png

寫好js后可以利用cdm進行測試坷襟。java中也可以利用相同的方法進行截圖奸柬。只需要在程序中將js換掉就行。并增加一個參數(shù)


截圖地址.png

截圖所需要的js


截圖
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末婴程,一起剝皮案震驚了整個濱河市廓奕,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌排抬,老刑警劉巖懂从,帶你破解...
    沈念sama閱讀 219,110評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異蹲蒲,居然都是意外死亡番甩,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,443評論 3 395
  • 文/潘曉璐 我一進店門届搁,熙熙樓的掌柜王于貴愁眉苦臉地迎上來缘薛,“玉大人,你說我怎么就攤上這事卡睦⊙珉剩” “怎么了?”我有些...
    開封第一講書人閱讀 165,474評論 0 356
  • 文/不壞的土叔 我叫張陵表锻,是天一觀的道長恕齐。 經(jīng)常有香客問我,道長瞬逊,這世上最難降的妖魔是什么显歧? 我笑而不...
    開封第一講書人閱讀 58,881評論 1 295
  • 正文 為了忘掉前任仪或,我火速辦了婚禮,結果婚禮上士骤,老公的妹妹穿的比我還像新娘范删。我一直安慰自己,他們只是感情好拷肌,可當我...
    茶點故事閱讀 67,902評論 6 392
  • 文/花漫 我一把揭開白布到旦。 她就那樣靜靜地躺著,像睡著了一般巨缘。 火紅的嫁衣襯著肌膚如雪添忘。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,698評論 1 305
  • 那天带猴,我揣著相機與錄音昔汉,去河邊找鬼懈万。 笑死拴清,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的会通。 我是一名探鬼主播口予,決...
    沈念sama閱讀 40,418評論 3 419
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼涕侈!你這毒婦竟也來了沪停?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 39,332評論 0 276
  • 序言:老撾萬榮一對情侶失蹤裳涛,失蹤者是張志新(化名)和其女友劉穎木张,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體端三,經(jīng)...
    沈念sama閱讀 45,796評論 1 316
  • 正文 獨居荒郊野嶺守林人離奇死亡舷礼,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,968評論 3 337
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了郊闯。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片妻献。...
    茶點故事閱讀 40,110評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖团赁,靈堂內(nèi)的尸體忽然破棺而出育拨,到底是詐尸還是另有隱情,我是刑警寧澤欢摄,帶...
    沈念sama閱讀 35,792評論 5 346
  • 正文 年R本政府宣布熬丧,位于F島的核電站,受9級特大地震影響怀挠,放射性物質(zhì)發(fā)生泄漏析蝴。R本人自食惡果不足惜矗钟,卻給世界環(huán)境...
    茶點故事閱讀 41,455評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望嫌变。 院中可真熱鬧吨艇,春花似錦、人聲如沸腾啥。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,003評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽倘待。三九已至疮跑,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間凸舵,已是汗流浹背祖娘。 一陣腳步聲響...
    開封第一講書人閱讀 33,130評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留啊奄,地道東北人渐苏。 一個月前我還...
    沈念sama閱讀 48,348評論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像菇夸,于是被迫代替她去往敵國和親琼富。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,047評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5庄新? 答:HTML5是最新的HTML標準鞠眉。 注意:講述HT...
    kismetajun閱讀 27,489評論 1 45
  • 發(fā)現(xiàn) 關注 消息 iOS 第三方庫、插件择诈、知名博客總結 作者大灰狼的小綿羊哥哥關注 2017.06.26 09:4...
    肇東周閱讀 12,106評論 4 62
  • 關于Mongodb的全面總結 MongoDB的內(nèi)部構造《MongoDB The Definitive Guide》...
    中v中閱讀 31,938評論 2 89
  • 自以為功械蹋, 自以為利, 自以為不可缺羞芍。 其功不高哗戈, 其利不富, 其人隨取代之涩金。 以勿貪功之心干其事谱醇,則功德無量, ...
    一小王爺一閱讀 135評論 3 1
  • 從北京回到重慶快一個月的時間了 不知道這段時間是怎么熬過來的 一個月時間仿佛過了一年 又仿佛如同夢一場 給了我歸零...
    巧丫頭巧啊閱讀 257評論 0 1