我的研發進擊路(3.31)

爬蟲爬呀爬發表於2019-03-31
  • 一、 太激動了哈哈哈哈哈。直至現在(3.31日23:42),研發考核的基本功能我終於大致實現了(雖然可能很多別的大佬早就完成遼),回首這兩個星期,既有接觸新知識的興奮,又有打碼出錯不斷的惱怒,但經過兩個星期的努力,我相信我自己已經比原來進步了很多。
  • 二、 學到現在,我最大的感觸就是不要因為事物未知就害怕。猶記得接受考核任務時聽到什麼資料庫,什麼SQL語句,什麼tkinter就有點打退堂鼓了。但真正接觸了,才發現他們也就那麼回事。
  • 三、 總結一下一些基礎功能的實現:
  • ①關於QQ音樂的爬取:
  • 首先,QQ音樂的請求方式都是ajax非同步請求的,所以在搜尋請求檔案的時候可以進行xhr過濾再在裡面查詢相關請求檔案;
  • 其次,獲取QQ音樂的音訊下載連結這個過程是一環接著一環的,大致是:找到client_search_cp開頭的請求檔案->在其請求url中輸入歌曲名/歌手名->獲取歌曲的songmid->再由songmid和filename(C400+songmid)找到vkey->由vkey構建下載連結;其中,在請求url網址中獲取songmid這個步驟個人感覺有點坑,裡面有mid、songmid、media_mid這些讓人混淆的東西,本人一開始就在這裡卡了好久……嗚嗚嗚
  • 再者,在請求url中還可以獲取歌名,歌手名,專輯名,歌曲時長,歌曲id這些資訊,但是裡面諸如(id,songid,vid)||(name,title,title_hilight)||(album,albumName,albumname_hilight)也讓人腦殼痛,著實卡了我好久。
  • 但目前還解決不了的是如何模擬登陸,如何實現整張專輯的下載
  • ②關於tkinter構造介面:
  • 整體不難,個人感覺比較有意思的就是按鈕關聯函式,listbox的curselection()方法可以返回所選中歌曲的預設索引。
  • 但目前還解決不了的是在listbox中如何將歌曲資訊有序的存放
  • ③關於資料庫的儲存:
  • 瞭解了基本的SQL語句以及用pymysql實現SQL語句後,關於歌曲資訊的儲存和查詢還是不難實現的。
  • 但目前還解決不了的是如果能成功實現登陸後,如果將每個賬號對應一個表
  • ④總的來說:
  • 現在基礎功能算是基本實現了,但目前大多數程式碼還是擠在一個檔案裡面
  • 接下來一個星期,儘量實現:
  • 程式碼的封裝,分散在多個檔案中
  • 實現多執行緒
  • 程式的異常處理能力有待提高
  • 模擬登陸
  • 實現爬取QQ音樂評論並按詞的頻率生成詞雲
  • 四、加油!!!希望真的能順利撐過一輪考核,二輪考核,如果最後真的能進入研發我睡著都能笑醒,啊啊啊啊加油加油,我真的好想進研發呀呀呀!!!

相關文章