爬取网易云音乐解析页面数据的三种方法
生活随笔
收集整理的這篇文章主要介紹了
爬取网易云音乐解析页面数据的三种方法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
爬取網易云音樂解析頁面數據的三種方法
from selenium import webdriver
from lxml import etree
import time,re
準備動作
#以張學友為例
driver = webdriver.Chrome()
down_url = ‘http://music.163.com/song/media/outer/url?id=’
driver.get(‘https://music.163.com/#/artist?id=6460’)
driver.switch_to.frame(‘g_iframe’)
time sleep(1)
html = driver.page_source
第一種方法:etree方法獲取數據
data = etree.HTML(html) ids = data.xpath('//div[@class="ttc"]/span/a/@href')#//=span,下面是例子 names = data.xpath('//div[@class="ttc"]//a/b/@title') j=0 for id,name in zip(ids,names):i = id.split('=')[-1]j += 1down_link=down_music_url+i+'.mp3'print(j, name,down_link)第二種方法:re正則表達式提取數據
data = re.findall('href="/song\?id=(.*?)">',html) name = re.findall('b title="(.*?)"',html) i = 0 for id,mc in zip(data,name):n = mc.replace(' ','')i += 1print(i,id,n)第三種方法:selenium直接頁面獲取數據
data = driver.find_elements_by_xpath('//div[@class="ttc"]/span/a') for id in data:i = id.get_attribute('href').split('=')[-1]name = id.get_attribute('text')url = down_url+i+'.mp3'print(url)總結并記錄下來,供參考,不足之處還請指點
總結
以上是生活随笔為你收集整理的爬取网易云音乐解析页面数据的三种方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: js 控制超出字数显示省略号
- 下一篇: MM看过来!教你如何打扮变成时尚达人 -