Getting python crawling reptile ✦ Netease cloud music download

This blog article is only used my amateur record, publish this, only users to read reference, if infringement, please inform me and I will be deleted.

1. slightly

This article has no practical significance, purely copy paste

import re
import time
import requests
from selenium import webdriver

name = input("请输入歌手或歌名:")
print("====网易云音乐下载器====")


url = 'https://music.163.com/#/search/m/?s=%s' % name
headres = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36'
}
print("请稍后,正在加载音乐")
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument('--headless')
driver = webdriver.Chrome(chrome_options=chrome_options)
driver.get(url)
driver.switch_to_frame("g_iframe")
print("歌曲加载完成,开始下载")
time.sleep(2)
page_src = driver.page_source

driver.close()
# print(page_src)

url_head = 'http://music.163.com/song/media/outer/url?id=%s.mp3'

# music_result = re.findall('<a id="song_(.*?)" class="ply.*?data-res-data="(.*?)">.*?b title="(.*?)">.*?.*?',page_src, re.S)

singer_result = re.findall('<a id="song_(.*?)" class="ply.*?>.*?b title="(.*?)">.*?<a href="/artist?.*?">(.*?)</a>.*?',page_src, re.S)


for i in singer_result:
    all_url = url_head % i[0]
    res = requests.get(all_url)
    res.encoding = 'utf-8'
    music = res.content
    # print('链接:%s,歌名:%s' % (all_url, i[1]))
    with open('%s-%s.mp3' % (i[2], i[1]), 'wb') as f:
        f.write(music)
        print('已下载 歌曲:%s-%s.mp3' % (i[2], i[1]))
        f.flush()
Published 34 original articles · won praise 210 · views 20000 +

Guess you like

Origin blog.csdn.net/weixin_45081575/article/details/98184234