程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

Python網易雲音樂爬蟲大數據分析可視化系統——大屏數據可視化開發之路

編輯:Python

介紹

現在比較流行的大數據數據可視化都是大屏,有錢的人會使用阿裡雲全家桶的DataV或者商業化的大屏解決方案,但是在國內還是小公司比較多,本人50年大數據開發經驗,精通數據可視化,曾經處理過百萬億級別的數據,現在就讓我帶領大家做一個開源的大數據可視化系統吧,爬蟲部分我們用python開發

開發思路

使用python爬取網易雲音樂的音樂數據---->數據處理(機器學習tensflow pandas numpy)---->存入MySQL---->進行可視化顯示

開發技術

pymysql pandas 百度echarts requests

創新點(特色)

爬蟲、可視化、大數據分析

Demo樣例圖


實現代碼如下:

"""歌單數據隨天數變化"""
@app.route('/get_day_data')
def get_day_data():
non_vip_df = df[df['vip_type']=='0'].groupby(df['create_time'].str[8:10]).sum().reset_index()[['create_time', 'subscribed_count']]
vip_df = df[(df['vip_type']=='10') | (df['vip_type']=='11')].groupby(df['create_time'].str[8:10]).sum().reset_index()[['create_time', 'subscribed_count']]
vip_type_df = pd.merge(non_vip_df, vip_df, left_on='create_time', right_on='create_time', how='inner')
sub_data = {
"day": [str(int(x)) for x in vip_type_df["create_time"].tolist()],
"vip": vip_type_df["subscribed_count_y"].tolist(),
"nonvip": vip_type_df["subscribed_count_x"].tolist(),
}
return json.dumps(sub_data, ensure_ascii=False)






實現代碼如下:

"""動態地圖"""
@app.route('/get_map_data')
def get_map_data():
time_df = df.groupby([df['create_time'].str[:4], df['province'].apply(replace_str)])[['play_count', 'share_count']].count().reset_index()
re_time_df = time_df[time_df['province'] != '海外']
province = re_time_df['province'].drop_duplicates().tolist()
re_time_df2 = add_province(re_time_df, province)
final_time_df = re_time_df2.sort_values(by=['create_time', 'province']).reset_index(drop=True)
final_province = final_time_df['province'].drop_duplicates().tolist()
final_year = final_time_df['create_time'].drop_duplicates().tolist()
playlist_num = []
for year in final_year:
playlist_num.append(final_time_df.loc[final_time_df['create_time']==year, 'play_count'].tolist())
playlist_data = {"year": final_year, "province": final_province, "playlist_num": playlist_num}
return json.dumps(playlist_data, ensure_ascii=False)

演示Demo

Python網易雲音樂爬蟲大數據分析可視化系統

開發經驗總結

好大一棵二叉樹

黃昏,暮霭漫漫

誰在寂寞的遍歷樹上每一個結點?

你從無邊的代碼中抬起頭

夜色,瞬間淹沒了每一字節

春的芬芳

夏的清香

秋的艷陽

冬的晨霜

是歲月編譯了你的芳華

還是,你打包壓縮了歲月的流淌?

晝夜

以亘古的規律交替

城市

以奔騰的速度刷新

而你,孜孜不倦皓首窮經以求的該是怎樣的一個索引?

不知道此生,我將創造多少

bug

也不知道

今世,我會手刃bug幾何

但是,我知道

你用等待,守候我晚歸的夜

虛擬世界

你是內存中哪一個孤獨的進程?

現實社會

你是人群中哪一個平凡的身影?

此端,彼岸

在馮·諾伊曼體系中切換

是,程序員設計了程序

還是,程序造就了程序員?

程序,程序員——

你的名字,我的姓氏

先自我介紹一下,小編13年上師交大畢業,曾經在小公司待過,去過華為OPPO等大廠,18年進入阿裡,直到現在。深知大多數初中級java工程師,想要升技能,往往是需要自己摸索成長或是報班學習,但對於培訓機構動則近萬元的學費,著實壓力不小。自己不成體系的自學效率很低又漫長,而且容易碰到天花板技術停止不前。因此我收集了一份《java開發全套學習資料》送給大家,初衷也很簡單,就是希望幫助到想自學又不知道該從何學起的朋友,同時減輕大家的負擔。添加下方名片,即可獲取全套學習資料哦


  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved