python爬取qq音乐下载歌曲

python爬取qq音乐下载歌曲

完整代码:

import requests
import json
from urllib.request import urlretrieve
from selenium import webdriver
import re
import os




def get_music_url():
    driver.get(f'https://y.qq.com/portal/search.html#page=1&searchid=1&remoteplace=txt.yqq.top&t=song&w={kw}')
    driver.implicitly_wait(10)
    data = driver.find_element_by_xpath('//div[@class="songlist__item"]//a').get_attribute('href')
    data = {'mid' : data}
    return data

def get_music(data):
    req = requests.post('http://www.douqq.com/qqmusic/qqapi.php',data=data).content
    req = json.loads(req)
    req = req.replace('\/','/')
    #print(req)
    g = re.compile('"m4a":"(.*?)",')
    c = re.findall(g,req)
    c = c[0]
    return c

def save_music(c):
    os.makedirs('/Users/baby/Desktop/qq音乐爬取/music/',exist_ok=True)
    urlretrieve( c , '/Users/baby/Desktop/qq音乐爬取/music/%s'%kw + '.mp3')


def go():
    data = get_music_url()
    c = get_music(data)
    save_music(c)
    print('下载完成啦!')

if __name__ == '__main__':
    kw = input('请输入想下载的歌曲名字:')
    driver = webdriver.Chrome()
    go()

你可能感兴趣的:(python,科技,IT)