什麼技術可以爬取和分析旅遊網站的信息?(爬蟲,自然語言處理等大數據相關)

1.通過什麼技術方案,可以時時爬取,如:窮游網,螞蟻窩這些旅遊網站的攻略信息(要求時時,快速,全面)
2.如何實現信息的分類和封裝,準確度能達到多高?(比如,能否通過語義判斷,把攻略里的相關信息結構化,比如旅遊金額大小抓取分類,景點名稱的抓取和歸類,住宿的酒店名稱抓取並歸類,吃喝的內容抓取並歸類,並判斷以上體驗的優劣程度,最後標籤化,形成加工後的二次可調用數據)
3.主要想實現如下功能,如:我們的一個用戶選擇去義大利玩10天,他制定了,50%的精力看人文景點,30%吃,20%購物的規劃,並設置了行程的預算,還選擇了某些個性化要求(比如,喜歡看馬戲,如果有類似的項目,我們就可以推薦)。我們能否可以通過調用爬取、採集開發後的數據,做大數據的分析,並通過大數據演算法和模型,給出用戶所需要的行程流程建議(什麼時間去哪些景點,坐什麼車,在哪裡吃什麼小吃,住什麼酒店等)。
3.如果能實現,在不計代價的情況下,如何實現最快反應?能有多快?即,用戶下達索取策略指令到給出策略的時間,預期最快能達到多快的速度?
答案前三名(超過10點),各寄驚喜小禮品一份,只為尊重知識,不成敬意,請大家給點指導,謝啦。


Q1.通過什麼技術方案,可以時時爬取?
單機爬蟲我相信對於一般的程序員,完成都不是很困難的,更何況你只需要爬一個網站,人工寫是一種很鍛煉圖遍歷操作的好機會~~~我相信找幾個優秀的大二大三學生就可以完成。。。不過,我們既然是程序員,就要學會偷懶,你說對不對~~~不會使用開源軟體的不是好程序員,你看連我國的自然科學一等獎也使用了開源軟體,在這裡我向你推薦
Scrapy | A Fast and Powerful Scraping and Web Crawling Framework

這個項目可以直接讓你輸入一個網站,他把底下的所有子頁面都給你搞定= =。。。快來謝謝我不用讓你僱傭大二的學生。。。
至於速度:這與你的網速和你有多少台主機的關係更大一些~~~

不過,爬網頁工作量不帶,但是Parse網頁略大= =。。。可能你需要人工寫一寫正則表達式把HTML裡面有用的信息提出來。。。

Q2.如何實現信息的分類和封裝,準確度能達到多高?(比如,能否通過語義判斷,把攻略里的相關信息結構化,比如旅遊金額大小抓取分類,景點名稱的抓取和歸類,住宿的酒店名稱抓取並歸類,吃喝的內容抓取並歸類,並判斷以上體驗的優劣程度,最後標籤化,形成加工後的二次可調用數據)

你說的什麼住宿酒店名稱抓取啊,景點名稱抓取啊,用監督學習模型的話,是用條件隨機場,將一句話裡面是景點名稱和住宿酒店的都抓出來。然後分類就是隨便用個分類器,比如SVM,NB等等。。。

但是這裡你會遇到一個困難,就是標註數據。。。所有監督學習模型需要標註數據,如果沒有就沒法訓練。。。所以非結構化信息變成結構化信息,從學術的角度上最大的問題是怎麼找標註語料。。。


準確率能到多少我不能胡說,這取決於你分幾類~~~二分類瞎蒙還50%呢~~~要是2萬類分類器直接哭了。。。所以準確率取決的因素是:標註數據量、分類類別多少、你分類器的性能(主要和你抽的特徵有關)。。。

體驗的優劣程度,這是一個自然語言情感分析的問題,不同數據集不一樣,如果只給二分類,優或者劣,80%沒問題。

3.主要想實現如下功能,如:我們的一個用戶選擇去義大利玩10天,他制定了,50%的精力看人文景點,30%吃,20%購物的規劃,並設置了行程的預算,還選擇了某些個性化要求(比如,喜歡看馬戲,如果有類似的項目,我們就可以推薦)。我們能否可以通過調用爬取、採集開發後的數據,做大數據的分析,並通過大數據演算法和模型,給出用戶所需要的行程流程建議(什麼時間去哪些景點,坐什麼車,在哪裡吃什麼小吃,住什麼酒店等)。

感覺像一個演算法題~~~有一張圖G=&,小明需要在這張圖上路過旅遊景點ABC,購物景點DEF,然後每個點有個開銷的耗費,每兩條邊有個路程的耗費。問如何設計路線,使得開銷耗費小於C,路程耗費小於S = =。。。我只會用剪枝來搜這個圖,你可能需要找個ACM的問問怎麼抽象最好。。。。速度與剪枝策略和你機器性能有關。。。

綜上:你需要有一台或者多台好機器;雇個會ACM的做第三問;雇個做自然語言處理的做第二問;雇個會爬蟲的做第一問~~~~最重要的是,雇好多人給你標註第二問的數據。


涉及到文本的話,基本是dirty work了。。

1. 爬蟲就不要想實時了,這些旅遊網站的攻略信息都是UGC的,全站內容都沒多少。先花點時間爬全站,然後每天爬新產生的就好了。框架很多,py的有scrapy pyspider之類的,不用框架直接寫也湊合。

2. 從攻略信息里要提結構化信息,算是information extraction from text..大抵有rule based和機器學習的做法,具體可以看[1]里的p37開始的一些內容。當然如果只訓練攻略里的文本數據量太小,可以找梁斌買個他用深度學習從百度知道標題提取的領域詞庫,買旅遊類的詞庫就可以了。

3. 可以把旅遊景點做一個類似topic model的劃分(旅遊佔比多少,購物佔比多少,人文佔比多少),然後結合每個景點的時間做個計算。。

4. 演算法做好了,速度就是實時的。


ps. 演算法的話,用rule based,nlp句法樹,主題模型,深度學習之類的我覺的都差不多,關鍵是前期數據夠多,dirty work得有人做。。。考慮到文本信息提取的複雜性,現在大多數做旅遊路徑推薦的paper都是用sns geotagged的圖片來做的,大抵就是去最大化p(下一個可能去的地點|前一個去的地點),可以看看[2],以及[2]里的ref pp。

感覺真是什麼都有了,就缺一個程序員了

[1] CS276A Text Information Retrieval, Mining, and Exploitation
http://web.stanford.edu/class/cs276b/handouts/lecture3.ppt

[2] A Travel Planning System Based on Travel Trajectories Extracted from a Large Number of Geotagged Photos on the Web
http://img.cs.uec.ac.jp/e/pub/conf11/111220yanai_2.pdf


1. Spark or Strom
2. NLP
3. 這個問題收費……
4. 看網速咯


可以用網頁數據爬取工具,你說的這些我做過。
1.我當時用的是GooSeeker,老師推薦的,可以在網上直接下,http://www.gooseeker.com。用這個把網頁內容爬下來
2.分詞軟體來做文本分析,這個分詞軟體你也可以在網上找找,我是朋友共享給我的
3.後面的你要求的「時時準確」、針對性什麼的,要基於這些做個系統的話是可以實現的
4.不過,你又不想花錢,那你就自己用爬蟲和文本分析工具自己折騰


我想給這個問題點反對唉


推薦閱讀:

大數據時代有沒有哪些讓你覺得不寒而慄的事情?
隱私保護的學術和現實意義?
大數據是否侵犯了個人隱私?
做大數據方向還是做互聯網方向的開發好?求職業規劃
如天眼查,企查查,啟信寶等查詢人企關聯的網站是否侵犯個人隱私?

TAG:自然語言處理 | 爬蟲計算機網路 | 大數據 | 大數據處理 |