亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

基于python實(shí)現(xiàn)的百度新歌榜、熱歌榜下載器(附代碼)

系統(tǒng) 1584 0

前言

首先聲明,本工具僅僅為學(xué)習(xí)之用,不涉及版權(quán)問題,因?yàn)榘俣纫魳防锩娴母枨旧硎强梢韵螺d的,而且現(xiàn)在百度也提供了”百度音樂播放器”,可以通過這個(gè)工具進(jìn)行批量下載。

我當(dāng)時(shí)做這個(gè)工具的時(shí)候,百度還沒有提供”百度音樂播放器”,而我又想批量下載,所以做了這樣的一個(gè)下載工具。當(dāng)然,主要還是為了學(xué)習(xí)。

工具 采用Python2.7.3+PyQt開發(fā)。

功能:

1.集中展示百度新歌榜或熱歌榜可下載的歌單。

2.支持單個(gè)、多個(gè)歌曲的下載。

3.可復(fù)制歌單中所有的鏈接內(nèi)容,方便在迅雷等下載工具中創(chuàng)建下載組。

缺陷:

目前采用單線程,效率不高,UI界面容易假死。

本工具運(yùn)行流程:

1.模擬用戶登錄百度。

2.若登錄成功,采集并解析頁面內(nèi)容,加載歌單列表。

3.用戶點(diǎn)擊下載按鈕或者批量下載按鈕后,下載歌曲。

基于python實(shí)現(xiàn)的百度新歌榜、熱歌榜下載器(附代碼)_第1張圖片

使用方法:

1.在配置文件setting.py的最后,配置可登錄百度的賬號(hào)和密碼,及百度熱歌榜或新歌榜的URL.

            
username = "your baidu acount"  #配置你的百度賬號(hào) 
password = "your baidu password" #配置你的百度密碼  
musiclistUrl = "http://music.baidu.com/top/dayhot" #  http://music.baidu.com/top/new 
          

2.直接運(yùn)行mainWindow.py文件即可,如果網(wǎng)速不給力的話可能要等上3、4分鐘。

運(yùn)行后如圖:

基于python實(shí)現(xiàn)的百度新歌榜、熱歌榜下載器(附代碼)_第2張圖片

用到的知識(shí):

1.首先用到了PyQt的GUI編程,窗體布局及QTableWidget、QProgressBar、QPushButton等控件及控件的重寫

2.用到了網(wǎng)絡(luò)編程的部分內(nèi)容,利用urllib,urllib2,cookielib請(qǐng)求網(wǎng)頁,模擬登錄百度。

3.利用HTMLParser解析網(wǎng)頁內(nèi)容,匹配網(wǎng)頁元素。

4.利用codecs進(jìn)行文件的讀寫。

遇到的問題:

1.編碼問題,由于在創(chuàng)建文件時(shí)將文件編碼設(shè)置為UTF-8,當(dāng)需要向文件寫入的內(nèi)容為中文等非ASCII碼內(nèi)容時(shí),總是提示編碼問題。其實(shí),百度音樂的網(wǎng)頁全部為UTF-8格式,因此從網(wǎng)頁中獲取的內(nèi)容也是UTF-8格式,但是,要講內(nèi)容寫入U(xiǎn)TF-8的文本中,必須將網(wǎng)頁內(nèi)容進(jìn)行decode(“utf8”)解碼為unicode格式,才能正常寫入。

檢測(cè)內(nèi)容編碼,可以用chardet模塊的chardet.detect(“內(nèi)容”)的方法。

另外,HTMLParser解析網(wǎng)頁內(nèi)容過程中,有的下載頁面會(huì)出現(xiàn)問題,根據(jù)提示信息發(fā)現(xiàn)還是編碼問題,將feed()方法中的內(nèi)容參數(shù)進(jìn)行decode(“utf8”)后,結(jié)果正常。

decode將內(nèi)容根據(jù)參數(shù)內(nèi)容解碼為unicode類型,具體要根據(jù)所采集的頁面的編碼。

github下載地址:點(diǎn)這里


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 最新久久免费视频 | 男人的天堂欧美精品色偷偷 | 国产日产欧美精品一区二区三区 | 又黑又粗又硬欧美视频在线观看 | 综合网伊人 | 中文字幕精品一区二区精品 | 在线亚洲欧洲国产综合444 | 日韩高清成人 | 99激情网 | 国产成人亚洲精品大帝 | 人人做人人爽久久久精品 | 精品一区二区三区视频在线观看免 | 久久免费精品高清麻豆 | 久久国产一区二区三区 | 久久久精品波多野结衣 | 国产精品欧美一区二区 | 青青青青久久精品国产h | 欧美福利影院 | 四虎影视8848a四虎在线播放 | 免费激情网址 | 日本大蕉香蕉大视频在线观看 | 九九亚洲综合精品自拍 | 亚洲一级生活片 | 久久天天躁狠狠躁夜夜中文字幕 | 中文字幕在线免费看 | 干干操操 | 久久国产精品国产自线拍免费 | 青草五月天 | 99re热在线观看 | 神马在线影视我不卡 | 免费高清a毛片 | 久久久久久久久综合影视网 | 99国产福利视频区 | 亚洲精品欧美日本中文字幕 | 分分操这里只有精品 | 国内精品久久久久久久久久影视 | 奇米影视国产 | 久久精品国产乱子伦多人 | 亚洲综合第一欧美日韩中文 | 91亚洲国产成人久久精品网址 | 欧美一区a|