Jsoup爬取心靈毒雞湯

不亂于心,不困于情。不畏將來,不念過往。如此,安好。

你的夢想是什么

之前一直在搞微博,定時轉(zhuǎn)發(fā)抽獎微博,搞定后,meilexiawen。最近想想定時發(fā)點有意思的東西也不錯,發(fā)啥呢?毒雞湯,沒錯!
【一個人至少擁有一個夢想,有一個理由去堅強。心若沒有棲息的地方,到哪里都是在流浪。 ——三毛】

開始你的表演

  1. 首先找個毒雞湯網(wǎng)站,并定位關(guān)鍵節(jié)點。湯的成色還不錯。

    心靈雞湯
  2. 按F12,對元素分析下。選中其中一個,右鍵Copy selector。

    #contentinside > div.totallikecontent > div > div > div.view-content > div.views-row.views-row-1.views-row-odd.views-row-first
    

    這樣只能標(biāo)識一個,好在jsoup.select支持正則。

    #contentinside > div.totallikecontent > div > div > div.view-content > div[class~=^views-row]
    
  3. 開始編寫代碼。目前沒發(fā)現(xiàn)網(wǎng)站有什么限制。除了.....

    public void getTotallike() throws IOException {
       String url = "http://www.juzimi.com/totallike";
       String ua = "User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36";
       Document parse = Jsoup.connect(url).userAgent(ua).execute().parse();
    
       Elements select = parse.select("#contentinside > div.totallikecontent > div > div > div.view-content > div[class~=^views-row]");
       for (Element element : select) {
           String author = element.select("div > div.xqjulistwafo").text();
           String content = element.select("div > div.views-field-phpcode-1 > a").text();
           System.out.println(content +"   "+author);
       }
    }
    
  4. 存儲這些雞湯,倒掉怪可惜的,我這里就統(tǒng)一放到redis里,因為只爬了15條。

        ArrayList<Object> poisons = new ArrayList<>();
        for (Element element : select) {
            String author = element.select("div > div.xqjulistwafo").text();
            String content  = element.select("div > div.views-field-phpcode-1 > a").text();
            System.out.println(content +"   "+author);
            poisons.add(content + "   " + author);
        }
        String value = JSONObject.toJSONString(poisons);
        stringRedisTemplate.opsForValue().set("Poison", value);
    
    先生,您的雞湯

表演結(jié)束

每天定時,早晚各一次

番外

因為jsoup訪問網(wǎng)站時,沒指定User-Agent時會默認帶下面這個User-Agent

Request() {
            super(null);
            this.method = Method.GET;
            this.addHeader("Accept-Encoding", "gzip");
            this.addHeader("User-Agent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.143 Safari/537.36");
            this.parser = Parser.htmlParser();
        }

看著和普通PC端UA沒什么區(qū)別,所以一般我都不帶(用默認的)。奇怪的事就發(fā)生了。



基本內(nèi)容和作者都是亂的,每次還不一樣,不知道是不是UA的問題,我換了UA就沒問題了,Mac電腦的朋友可以測測看。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • **2014真題Directions:Read the following text. Choose the be...
    又是夜半驚坐起閱讀 11,042評論 0 23
  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標(biāo)簽?zāi)J的外補...
    _Yfling閱讀 14,114評論 1 92
  • 上海進入黃梅天不是一天兩天的事,這瀝瀝落落的雨,灰色的天空,讓人的心好不痛快。但是,上禮拜,不管是上網(wǎng),還是進入朋...
    ElleLee閱讀 33,677評論 14 12
  • 維羅妮卡平庸的生活,沒有激動,沒有悲傷,什么都沒有,就只有一天一天的重復(fù)。談不上很幸福,也談不上不幸福。她閉...
    家以純閱讀 401評論 2 3
  • 高雅別致的小皮裙包臀裙,帶一絲小俏皮,遮肉顯瘦的同事,勾勒出迷人曲線。拼接的設(shè)計增添了時尚感,時尚范十足,擁有獨特...
    于賀賀閱讀 783評論 0 0

友情鏈接更多精彩內(nèi)容