ChatGPT如何批量获取指定歌手的音乐
头条创作挑战赛
本文使用python批量获取指定歌手的音乐,并下载到本地。1。分析网页
登录酷狗音乐,输入想搜索的歌手的音乐(例如本文的林俊杰),页面结果如下
1。1分析对应的url
可见,获取歌曲列表的urllistmurlhttps:complexsearch。kugou。comv2searchsong?callbackcallback123srcappid2919clientver1000clienttime1669552869004mid6fb3e7f78cfb475ec8353739280ca9e0uuid6fb3e7f78cfb475ec8353739280ca9e0dfid4XSsT32VYg1y0xqt0R3rCVdvkeyword林俊杰page1pagesize30bitrate0isfuzzy0inputtype0platformWebFilteruserid0iscorrection1privilegefilter0filter10tokenappid1014signaturef09af4c2d8fd21a095c14300772703ce
对应的歌曲数据列表
1。2选择对应歌曲
选择一首歌曲(例如《背对背拥抱》),找到对应的歌曲的url
其中hash值即之前list中的值,由此可将其作为变量传入fori,sinenumerate(songlist):print(f{i1}。{s。get(SongName)}{s。get(FileHash)}{s。get(AlbumID)})infourlfhttps:wwwapi。kugou。comyyindex。php?rplaygetdatahash{s。get(FileHash)}albumid{s。get(AlbumID)}print(infourl)
2。完整案例代码2。1完整案例代码如下importrequestsimportjsonheaders{UserAgent:Mozilla5。0(WindowsNT10。0;Win64;x64)AppleWebKit537。36(KHTML,likeGecko)Chrome107。0。0。0Safari537。36,Cookie:kgmid6fb3e7f78cfb475ec8353739280ca9e0;kgdfid4XSsT32VYg1y0xqt0R3rCVdv;kgdfidcollectd41d8cd98f00b204e9800998ecf8427e;Hmlvtaedee6983d4cfc62f509129360d6bb3d1669429609,1669430050,1669474232;kgmidtemp6fb3e7f78cfb475ec8353739280ca9e0;Hmlpvtaedee6983d4cfc62f509129360d6bb3d1669480245}listmurlhttps:complexsearch。kugou。comv2searchsong?callbackcallback123srcappid2919clientver1000clienttime1669552869004mid6fb3e7f78cfb475ec8353739280ca9e0uuid6fb3e7f78cfb475ec8353739280ca9e0dfid4XSsT32VYg1y0xqt0R3rCVdvkeyword林俊杰page1pagesize30bitrate0isfuzzy0inputtype0platformWebFilteruserid0iscorrection1privilegefilter0filter10tokenappid1014signaturef09af4c2d8fd21a095c14300772703cemresrequests。get(listmurl,headersheaders)print(mres。text)songlistjson。loads(mres。text〔12:2〕)〔data〕〔lists〕print(songlist)fori,sinenumerate(songlist):print(f{i1}。{s。get(SongName)}{s。get(FileHash)}{s。get(AlbumID)})infourlfhttps:wwwapi。kugou。comyyindex。php?rplaygetdatahash{s。get(FileHash)}albumid{s。get(AlbumID)}print(infourl)fnamef{i1}。{s。get(SongName)}。mp3mres2requests。get(infourl,headersheaders)print(f{i1}。{mres2。json()〔data〕〔playurl〕})murlmres2。json()〔data〕〔playurl〕print(murl)ifmurl!:mres3requests。get(murl,headersheaders)withopen(fname,wb)asf:f。write(mres3。content)2。2运行结果
运行过程中会将对应歌曲的url打印出来
3。ChatGPT方案
由此可见,ChatGPT可以在我们写代码时提供一些参考的方法。
PS:以上是参考尚学堂项目案例学习编写,仅供学习使用,严禁用于商业用途或破坏性用途。祝愿大家听歌无忧