import requests
from lxml import etree
base_url = ‘https://www.ximalaya.com/lishi/4164479/15022309’
track_id = base_url.split(‘/’)[-1]
url = ‘https://www.ximalaya.com/revision/play/tracks?trackIds=’ + str(track_id)
headers = {
‘User-Agent’: ‘Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 SE 2.X MetaSr 1.0’
}
response = requests.get(url, headers=headers)
json_dict = response.json()
src_str = json_dict[‘data’][‘tracksForAudioPlay’][0][‘src’]
trackName = json_dict[‘data’][‘tracksForAudioPlay’][0][‘trackName’]
from urllib import request
request.urlretrieve(src_str, trackName+’.m4a’)