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


介紹

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

開發思路

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

開發技術

pymysql pandas 百度echarts requests

創新點(特色)

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

源碼開放地址(碼雲gitee)

https://gitee.com/bysj2021/music_spider_web

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幾何

但是,我知道

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

虛擬世界

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

現實社會

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

此端,彼岸

在馮·諾伊曼體系中切換

是,程序員設計了程序

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

程序,程序員——

你的名字,我的姓氏

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM