教你使用Python獲取QQ音樂某個(gè)歌手的歌單
1、實(shí)驗(yàn)內(nèi)容:
從qq音樂中獲取某個(gè)你喜歡的歌手清單。詳細(xì)內(nèi)容如下,以小紅莓的歌曲清單為例:


主要目的是獲取qq音樂某位歌手的單曲清單,主要涉及到的庫有request、json。
2、實(shí)驗(yàn)步驟如下所示:
2.1、首先要了解qq音樂網(wǎng)站的robots協(xié)議。

2.2、打開qq音樂網(wǎng)頁、查看頁面詳情,了解頁面。


2.3分析網(wǎng)頁源代碼Elements


2.4、點(diǎn)擊Headers,拿到相關(guān)的參數(shù)。



2.5、根據(jù)實(shí)際情況編寫合適的代碼進(jìn)行實(shí)驗(yàn)操作


簡易版本以CSV形式呈現(xiàn)爬取結(jié)果,完整代碼如下:
import requests # 請求
from fake_useragent import UserAgent
import json
print("請輸入您想要爬取清單的歌手名:")
name = input()
ua = UserAgent()
headers = {
'User-Agent': ua.random,
'cookie':'RK=LdWlHMsQ+b; ptcz=42785168e679b66b7913e09a4387fc94c5ad2d81419840eb33a502abc14ae6c6; pgv_pvid=4366402929; fqm_pvqid=ed1a5c76-5778-4d72-aa4f-389d94cd126e; ts_uid=886687551; fqm_sessionid=2b4a4a2f-b921-4e70-861d-54a608695f10; pgv_info=ssid=s5047316408; ts_refer=www.so.com/link; _qpsvr_localtk=0.49574447171587144; login_type=1; wxopenid=; tmeLoginType=2; psrf_qqaccess_token=D40E8A445E33FC38FB47291B44C03E96; qqmusic_key=Q_H_L_5Opuh_YbF8NbIlG-FqC_2ns2gXyWSTh_cplWyZPhEpyIWDVtQUGLwQQ; psrf_access_token_expiresAt=1656146941; psrf_qqunionid=93ABF9072A8734C330E108787CC182AE; uin=2363310076; wxunionid=; qm_keyst=Q_H_L_5Opuh_YbF8NbIlG-FqC_2ns2gXyWSTh_cplWyZPhEpyIWDVtQUGLwQQ; psrf_musickey_createtime=1648370941; qm_keyst=Q_H_L_5Opuh_YbF8NbIlG-FqC_2ns2gXyWSTh_cplWyZPhEpyIWDVtQUGLwQQ; psrf_qqopenid=900C2C2A46F36818FEB00C24A5EEC6B0; wxrefresh_token=; psrf_qqrefresh_token=8289BF671C8907272471F03D564F5A69; euin=owosoio5oenl7c**; ts_last=y.qq.com/n/ryqq/search',
'referer':'https://y.qq.com/'
}
url = 'https://c.y.qq.com/soso/fcgi-bin/client_search_cp?p=1&n=10&w={}'
resp = requests.get(url.format(name), headers=headers)
json_str = resp.text
json_str = json_str[9:-1]
json_dict = json.loads(json_str)
songlist = json_dict['data']['song']['list']
f = open("list.csv", mode="w", encoding="utf-8")
for song in songlist:
print('歌名或?qū)]嬅麨椋?+song['albumname'])
f.write(song['albumname'])
f.write('\n')2.6.通過代碼進(jìn)行演示運(yùn)行結(jié)果
以周深為例:

3、實(shí)驗(yàn)分析


4、遇到的困難和解決點(diǎn):

到此這篇關(guān)于Python獲取QQ音樂某個(gè)歌手的歌單的文章就介紹到這了,更多相關(guān)Python獲取歌手的歌單內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python內(nèi)置函數(shù)zip map filter的使用詳解
這篇文章主要介紹了Python內(nèi)置函數(shù)zip map filter的使用,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-04-04
pyCharm 實(shí)現(xiàn)關(guān)閉代碼檢查
這篇文章主要介紹了pyCharm 實(shí)現(xiàn)關(guān)閉代碼檢查,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-06-06
Python實(shí)現(xiàn)生命游戲的示例代碼(tkinter版)
生命游戲是由劍橋大學(xué)約翰·何頓·康威設(shè)計(jì)的計(jì)算機(jī)程序,一時(shí)吸引了各行各業(yè)一大批人的興趣。本文將用Python實(shí)現(xiàn)這一游戲,感興趣的可以嘗試一下2022-08-08
GitHub上值得推薦的8個(gè)python 項(xiàng)目
GitHub 無疑是代碼托管領(lǐng)域的先行者,Python 作為一種通用編程語言,已經(jīng)被千千萬萬的開發(fā)人員用來構(gòu)建各種有意思或有用的項(xiàng)目。以下我們會介紹一些使用 Python 構(gòu)建的GitHub上優(yōu)秀的項(xiàng)目。2020-10-10
Python實(shí)現(xiàn)霍夫圓和橢圓變換代碼詳解
這篇文章主要介紹了Python實(shí)現(xiàn)霍夫圓和橢圓變換代碼詳解,具有一定借鑒價(jià)值,需要的朋友可以參考下2018-01-01

