国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

爬取網易云音樂MP3鏈接腳本

2019-11-14 13:09:54
字體:
來源:轉載
供稿:網友

代碼部分

#Python 3.5#Author: A_lPha#Blog: http://blog.csdn.net/a_lphaimport jsonfrom urllib.request import urlopenfrom urllib.error import HTTPError找網易云音樂歌曲的ID方法,在網易云音樂搜索到該歌曲,打開播放頁面,在瀏覽器地址欄后顯示該歌曲ID。

歌曲

一般情況下可以找到歌曲的鏈接,付費歌曲也可以找到鏈接,但是返回404錯誤。

代碼很簡單,現在還沒發現其他問題。

==================================更新==================================

#Python 3.5#Author: A_lPha#Blog: http://blog.csdn.net/a_lphaimport jsonimport timefrom urllib.request import urlopenfrom urllib.error import HTTPErrorprint("*" * 8,"網易云音樂下載器", "*" * 8,"/n")def getId(): try: ID = int(input('請輸入歌曲ID:/n>>> ')) print("正在查詢,請稍后.../n") time.sleep(0.9) return ID except: print("請輸入正確的ID!/n") getId()def getInformations(ID): print("--"*4,"查詢結果","--"*4) try: ID = str(ID) url = "http://music.163.com/api/song/detail/?ids=["+ID+"]" html = urlopen(url).read().decode("utf-8") rejson = json.loads(html) for informations in rejson['songs']: print('歌曲ID: ', informations['id']) print('歌曲名稱: ', ''.join(informations['name'])) print('歌手: ', ''.join(names['name'] for names in informations['artists'])) print('mp3鏈接: ', informations['mp3Url']) song = ''.join(informations['name']) name = ''.join(names['name'] for names in informations['artists']) mp3url = informations['mp3Url'] return song,name,mp3url except: print("這個可能不是正確的ID哦!重新試試吧。") id = getId() song, name, mp3url = getInformations(id) getUrl(song, name, mp3url)def getUrl(song,name,mp3url): print("-"*9, "下載", "-"*9) num = int(input('是否下載?(輸入1下載該歌曲,輸入其他數字關閉程序.)/n')) if num == 1: try: filename = str(song + "-" + name) with open(filename + ".mp3", "wb") as mp: infor = urlopen(mp3url).read() mp.write(infor) print("已保存!") except HTTPError as e: print("遇到錯誤啦! 錯誤代碼是這個: /n", ">>>>>>", e, "<<<<<<", "/n我猜這是付費歌曲的'ID',可能是網站不讓下載吧!") elif num != 1: print("已關閉。")id = getId()song, name, mp3url = getInformations(id)getUrl(song, name, mp3url)

這段代碼處理了異常,界面也清晰了許多。不過代碼還是有些臃腫。

運行界面


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 沂南县| 凤山县| 玉田县| 香河县| 霍山县| 乌拉特前旗| 兖州市| 长春市| 红河县| 大余县| 皋兰县| 沁源县| 扎赉特旗| 宝清县| 固始县| 中山市| 汉源县| 平武县| 洛宁县| 浠水县| 天津市| 和田市| 望江县| 奇台县| 随州市| 称多县| 长子县| 故城县| 呼玛县| 黄山市| 安庆市| 福鼎市| 南昌县| 磐石市| 灵丘县| 铁岭市| 普宁市| 拉萨市| 新沂市| 荥阳市| 元谋县|