成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

004-綜合應(yīng)用-《美食趨勢(shì)》

Codeing_ls / 2047人閱讀

摘要:綜合應(yīng)用美食趨勢(shì)前言最近事情比較多,一直沒(méi)找出時(shí)間繼續(xù)寫東西,抱歉。通過(guò)圖片抓取獲取美食資源,然后美食信息進(jìn)行展示和數(shù)據(jù)分析。引用依賴配置定時(shí)注解。引用依賴已經(jīng)把的依賴包含了。

綜合應(yīng)用-《美食趨勢(shì)》 前言

最近事情比較多,一直沒(méi)找出時(shí)間繼續(xù)寫東西,抱歉。
后面準(zhǔn)備綜合前面的東西寫一個(gè)小應(yīng)用。通過(guò)圖片抓取獲取美食資源,然后美食信息進(jìn)行展示和數(shù)據(jù)分析。

需求功能整理

小呂最近胃口不好,吃啥啥不香,日益消瘦。小貂看在眼里,疼在心里,甚至懷疑是不是自己的飯已經(jīng)被吃夠了,甚是傷心。一天她把自己的擔(dān)憂跟小諸葛說(shuō)了,小諸葛輕輕搖扇說(shuō),這個(gè)好辦,我們蜀氏集團(tuán)出個(gè)菜譜,只要按照這個(gè)菜譜高的做,保準(zhǔn)你家小呂吃的開心。
小諸葛回到公司后,把情況給大家說(shuō),理出一個(gè)大概的思路:小呂不愛吃飯-->小貂做的不好吃-->小貂不知道做啥好吃-->蜀氏集團(tuán)能否提供美食參考?美食參考需要怎么做才能達(dá)到目的?大家討論后,一致同意先出一個(gè)雛形,討論雛形結(jié)果如下

數(shù)據(jù)設(shè)計(jì)

數(shù)據(jù)結(jié)構(gòu)

功能實(shí)現(xiàn) 1. 定時(shí)抓取數(shù)據(jù)

小趙接手定時(shí)任務(wù)計(jì)劃,他決定采用spring-task,就像把大象放到冰箱一樣簡(jiǎn)單。引用依賴-->配置spring task--> 定時(shí)注解。
a. 引用依賴spring-webmvc已經(jīng)把task的依賴包含了。只引用下一下個(gè)即可

...
        
            org.springframework
            spring-webmvc
        
...

b. 配置spring,注意xml一定要聲明task


    ... 
    
        
                       
    ...
    
     
     
    ...

c. 定時(shí)注解,定時(shí)表達(dá)式采用cron表達(dá)式

package org.sl.food.task;
...
@Component
public class FoodCrawlTask {
@Scheduled(cron = "0/5 * *  * * ?")
    public void foodCrawl() {
        ...
    }
    ...
}

現(xiàn)在乍聽特別高大上的定時(shí)任務(wù)功能就這么完成了,只要定時(shí)去獲取數(shù)據(jù)就行啦,剩下的交給別人吧。

2. 解析數(shù)據(jù)入庫(kù)

小張表面看著滿臉橫肉,胡子比頭發(fā)還長(zhǎng)。怎么看都感覺是個(gè)大大咧咧,易燃易爆品。正是這人,非想做需要細(xì)心,耐心的活;想改變?nèi)藗儗?duì)他的看法。怎么做呢,怎么把瀏覽器看到的數(shù)據(jù)轉(zhuǎn)換成固定結(jié)構(gòu)的數(shù)據(jù)呢?首先需要有數(shù)據(jù),這個(gè)小趙已經(jīng)完成;其次需要解析數(shù)據(jù),jsoup,專門解析html數(shù)據(jù),這個(gè)算是解決;剩下的對(duì)應(yīng)數(shù)據(jù)了,id,name,菜譜地址,圖片……這么多,關(guān)鍵小趙給的數(shù)據(jù),還不能完全滿足,需要額外的數(shù)據(jù),這可咋整,但是小張不能急!?。≡趺茨芸焖俚娜〉轿蚁胍闹的??瀏覽器可以用jQuery,什么?jsoup支持jQuery語(yǔ)法?!。

...
        Elements el = doc.select("#listtyle1_list .listtyle1 a.big");
        logger.debug("{}", el);
        List foodList = new LinkedList<>();
        for (Element e : el) {
            FoodEntity food = new FoodEntity();
            food.setUpdateTime(new Date());
            food.setName(e.attr("title"));
            food.setDetailsSite(e.attr("href"));
            food.setPicture(e.select("img").attr("src"));
            String tmp = e.select(".c2 .li2").text();
            String[] strArr = tmp.split("/");
            food.setTasteType(strArr[1].trim());

            Matcher m = idPattern.matcher(food.getDetailsSite());
            if (m.find()) {
                tmp = m.group();
                food.setId(tmp.substring(1, tmp.length() - 5));
            } else {
                food.setId(new Date().toString());
            }

            getMore(food);

            foodList.add(food);
        }
...

so easy,想要啥,就拿啥。嗯,還有個(gè)點(diǎn)贊數(shù)沒(méi)法拿,不怕,還是同樣的套路,照著小趙拿數(shù)據(jù)的方法來(lái)一遍。嘿!看我要變形了!呔!嗯?沒(méi)有值??!明明瀏覽器里有,憑啥我就沒(méi)有?這可咋整,但是小張不能急?。?!咦,瀏覽器頁(yè)面訪問(wèn)后,又走了一個(gè)ajax拿數(shù)據(jù),好家伙,被我逮著了,我請(qǐng)求下數(shù)據(jù)不就行了唄。啊?請(qǐng)求回復(fù)403?。∮譀](méi)有數(shù)據(jù)??!這可咋整,但是小張不能急?。?!瀏覽器能整的,我也能!照著瀏覽器的請(qǐng)求寫唄,少header,我加header。

        HttpGet get = new HttpGet(s);
        get.setHeader("Accept-Encoding", "gzip, deflate, br");
        get.setHeader("Accept-Language", "zh-CN,zh;q=0.9,en;q=0.8");
        get.setHeader("Cache-Control", "no-cache");
        get.setHeader("Connection", "keep-alive");
        get.setHeader("Host", "xxxxxxx");
        get.setHeader("Pragma", "no-cache");
        get.setHeader("Referer", "xxxxxxxxxx");
        get.setHeader("User-Agent", "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.81 Safari/537.36");

嘿,來(lái)了。小樣,還有我小張搞不了的?這么費(fèi)神的事我也能搞!以后這樣的事,就不要找我了??!

3. 比對(duì)分析功能

to be continue!!!
github地址

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/77068.html

相關(guān)文章

  • 設(shè)計(jì)模式系列(總綱)

    摘要:前言關(guān)于設(shè)計(jì)模式,想必大家的第一感覺就是過(guò)于高深,有點(diǎn)虛吧。為什么要學(xué)習(xí)設(shè)計(jì)模式因?yàn)橐b逼啊咳咳,大家請(qǐng)忽略前面那句話。處處都是設(shè)計(jì)模式的體現(xiàn),所以若想攻下,設(shè)計(jì)模式是必學(xué)的。下節(jié)預(yù)告單例模式 前言 關(guān)于設(shè)計(jì)模式,想必大家的第一感覺就是過(guò)于高深,有點(diǎn)虛吧。相對(duì)來(lái)說(shuō),我們還是更熟悉ssh或者ssm之類的開發(fā)框架,一個(gè)工具用久了就會(huì)熟能生巧,就像刷漆工,時(shí)間長(zhǎng)了也知道如何刷的一手漂亮的好墻...

    leiyi 評(píng)論0 收藏0
  • 云計(jì)算數(shù)據(jù)中心綜合布線七大發(fā)展趨勢(shì)

    摘要:網(wǎng)絡(luò)架構(gòu)扁平化架構(gòu)布線傳統(tǒng)的數(shù)據(jù)中心數(shù)據(jù)流主要在服務(wù)器和客戶機(jī)之間流動(dòng),我們形象地稱之為南北向的流動(dòng),云計(jì)算數(shù)據(jù)中心數(shù)據(jù)流主要在數(shù)據(jù)中心服務(wù)器之間流動(dòng),我們稱之為東西向流動(dòng)?! ≡朴?jì)算是最近幾年最熱門的話題之一,我們的生活越來(lái)越離不開云,網(wǎng)絡(luò)訂票、購(gòu)物、訂房、訂餐等各種應(yīng)用層出不窮。云計(jì)算改變了人們的生活方式,也改變了數(shù)據(jù)中心的技術(shù)發(fā)展路線,為了滿足不斷涌現(xiàn)的互聯(lián)網(wǎng)應(yīng)用和不斷增長(zhǎng)的數(shù)據(jù)傳輸需...

    yimo 評(píng)論0 收藏0
  • 云計(jì)算數(shù)據(jù)中心綜合布線的七大發(fā)展趨勢(shì)

    摘要:為了有效的管理這個(gè)生態(tài)系統(tǒng),云計(jì)算數(shù)據(jù)中心通過(guò)采用數(shù)據(jù)中心基礎(chǔ)設(shè)施管理以及自動(dòng)基礎(chǔ)設(shè)施管理等智能化的手段能夠?qū)崟r(shí)遠(yuǎn)程監(jiān)控?cái)?shù)據(jù)中心主要的基礎(chǔ)設(shè)施包括供電溫度安防布線,因而大大提高數(shù)據(jù)中心可視化和管理效率?! ≡朴?jì)算是最近幾年最熱門的話題之一,我們的生活越來(lái)越離不開云,網(wǎng)絡(luò)訂票、購(gòu)物、訂房、訂餐等各種應(yīng)用層出不窮。云計(jì)算改變了人們的生活方式,也改變了數(shù)據(jù)中心的技術(shù)發(fā)展路線,為了滿足不斷涌現(xiàn)的互聯(lián)...

    z2xy 評(píng)論0 收藏0
  • 云計(jì)算突破千億大關(guān),融合和智能化是未來(lái)趨勢(shì)

    摘要:融合和智能化是云計(jì)算領(lǐng)域的兩大重要趨勢(shì),基礎(chǔ)云服務(wù)將成為企業(yè)基礎(chǔ)服務(wù)的入口,應(yīng)用云領(lǐng)域重中臺(tái)輕應(yīng)用是未來(lái)趨勢(shì)。9月20日,在愛分析舉辦的2018·中國(guó)云計(jì)算高峰論壇上,同方有云董事長(zhǎng)程輝、驛氪創(chuàng)始人閔捷、噼里啪智能·財(cái)稅創(chuàng)始人樊祎、用友研究院院長(zhǎng)呂建偉等10多位云計(jì)算領(lǐng)域領(lǐng)軍人物,就行業(yè)未來(lái)發(fā)展趨勢(shì)分享了深度觀察。同時(shí),愛分析在會(huì)上還發(fā)布了《中國(guó)云計(jì)算行業(yè)報(bào)告》(以下簡(jiǎn)稱報(bào)告),《報(bào)告》稱,...

    bladefury 評(píng)論0 收藏0
  • 友盟2015年Q2、Q3季度中國(guó)移動(dòng)互聯(lián)網(wǎng)趨勢(shì)報(bào)告

    摘要:后歲用戶依然是移動(dòng)互聯(lián)網(wǎng)的主生力軍,但隨著后群體的年齡增長(zhǎng),早期移動(dòng)用戶逐漸向較高年齡層人群轉(zhuǎn)移。綜合男女性別數(shù)據(jù)來(lái)看,移動(dòng)用戶中的女性群體在較高消費(fèi)水平人群中占據(jù)相當(dāng)比重。 showImg(https://segmentfault.com/img/bVrA7P); 報(bào)告要點(diǎn):1、 截止至2015年第三季度,活躍設(shè)備數(shù)達(dá)10.8億,與第二季度相比增長(zhǎng)1.9%,增幅進(jìn)一步放緩,新老...

    yuxue 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<