Python 爬取百度音樂

HuangZhang_123發表於2017-09-08

Python:3.5
歡迎加入學習交流QQ群:657341423


獲取歌曲資訊

post方式

import requests
url='http://play.baidu.com/data/music/songlink'
data={'songIds':'100575177'}
r=requests.post(url,data=data)
print (r.content.decode('UTF-8'))
f=open('data.txt','w',encoding='utf-8')
f.write(r.content.decode('UTF-8'))
f.close()

通過獲取songIds即可獲得歌曲的資訊

get方式

http://tingapi.ting.baidu.com/v1/restserver/ting?method=baidu.ting.song.play&format=jsonp&songid=2498009

同樣通過獲取songIds即可獲得歌曲的資訊

爬取百度MV

import requests

url='http://music.baidu.com/playmv/554869244'
s=requests.session()
headers={'referer':'http://music.baidu.com/mv',
         'user-agent':'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36',
         }

r=s.get(url,headers=headers)
a=r.content.decode('UTF-8')

file_mp4=a.split('data.push')[1].split('file_link":"')[1].replace('"});','').replace(r"\\",r'').replace('\/','/').replace("\n",'').strip()

get_file=s.get(file_mp4)
f=open('data.mp4','wb')
f.write(get_file.content)
f.close()

相關文章