網(wǎng)絡(luò)數(shù)據(jù)分析和可視化

1 項(xiàng)目描述##

豆瓣電影上提供的電影數(shù)據(jù)為例,完整地展示網(wǎng)絡(luò)數(shù)據(jù)從獲取、處理到分析、可視化這一過程,純當(dāng)練手,也為感興趣的小伙伴提供相關(guān)的技術(shù)介紹。項(xiàng)目代碼托管在Github上,可視化網(wǎng)站請(qǐng)?jiān)L問這里。

豆瓣電影數(shù)據(jù)可視化.png

2 數(shù)據(jù)獲取##

用python寫爬蟲,Scrapyurllib2都是比較好的選擇,由于我對(duì)功能的要求比較簡(jiǎn)單,故選擇后者即可。

在豆瓣電影上通過Chrome開發(fā)工具找到數(shù)據(jù)請(qǐng)求API,接下來就可以寫代碼爬一些電影數(shù)據(jù)了,我使用的是這兩個(gè)API:

  1. http://movie.douban.com/j/search_tags?type=movie
  2. http://movie.douban.com/j/search_subjects?type=movie&tag=愛情&page_limit=20&page_start=0

第一個(gè)API是獲取所有電影的分類即tag,第二個(gè)是請(qǐng)求某個(gè)tag下偏移為page_start的page_limit條電影數(shù)據(jù),包括電影的標(biāo)題、url、評(píng)分等信息。

有了電影的url,再次爬取該頁面對(duì)應(yīng)的html內(nèi)容, 然后用Beautiful Soup解析出想要的字段就好了。最終一共獲取了4587條電影記錄,每條記錄包含以下15個(gè)字段:電影ID、標(biāo)題、鏈接、縮略圖、評(píng)分、導(dǎo)演、編劇、演員、分類、上映國家、語言、上映時(shí)間、時(shí)長(zhǎng)、別名和簡(jiǎn)介。

3 數(shù)據(jù)清洗##

這一步主要是為了提高數(shù)據(jù)質(zhì)量和配合后續(xù)的工作,對(duì)獲取的數(shù)據(jù)進(jìn)行一些清洗和預(yù)處理工作。比如將字段里多余的空白去掉、將上映時(shí)間僅保留年份、將時(shí)長(zhǎng)處理為以分鐘為單位的整數(shù)等,下圖是同一條電影數(shù)據(jù)在清洗前后的對(duì)比。

數(shù)據(jù)清洗樣例.png

4 數(shù)據(jù)分析##

最基本的分析包括一些統(tǒng)計(jì)量的計(jì)算,說白了就是固定或以某一個(gè)字段分類,對(duì)另一個(gè)字段進(jìn)行求和或求平均。我的主要分析字段是電影數(shù)量和平均評(píng)分,看它們和電影分類、語言、上映國家、上映時(shí)間、時(shí)長(zhǎng)等其他字段之間有何關(guān)聯(lián)。

5 數(shù)據(jù)可視化##

俗話說,“一圖勝千言”,所以數(shù)據(jù)分析的結(jié)果以可視化網(wǎng)站的形式給出。我用Flask搭建了一個(gè)簡(jiǎn)單的網(wǎng)站,用Echarts繪制了一些簡(jiǎn)單的圖標(biāo)來展示分析的結(jié)果,可視化網(wǎng)站請(qǐng)?jiān)L問這里

網(wǎng)站包含三個(gè)子菜單:統(tǒng)計(jì)、評(píng)分、搜索?!敖y(tǒng)計(jì)”展示了和電影數(shù)量相關(guān)的分析結(jié)果,“評(píng)分”展示了和電影評(píng)分相關(guān)的分析結(jié)果,“搜索”則提供了一個(gè)簡(jiǎn)單的基于關(guān)鍵詞匹配的搜索功能。它們看起來大概是這個(gè)樣子:

統(tǒng)計(jì)頁面.png
評(píng)分頁面.png
搜索頁面.png

6 總結(jié)##

這次開發(fā)任務(wù)主要出于個(gè)人興趣,順便拋磚引玉地和大家介紹一些基本的方法和技術(shù)。網(wǎng)絡(luò)上可以獲取的數(shù)據(jù)不計(jì)其數(shù),只要腦洞開得夠大,在數(shù)據(jù)源、分析技術(shù)、可視化方法上進(jìn)一步提升,就一定可以創(chuàng)造出更有意義和價(jià)值的成果。

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

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

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