怎么在python项目中使用beautifulsoup4爬取酷狗音乐?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
安装方法:
pip install beautifulsoup4
完整代码如下:双击就能直接运行
from bs4 import BeautifulSoup import requests import re headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.109 Safari/537.36' } url='https://songsearch.kugou.com/song_search_v2?&page=1&pagesize=30&userid=-1&clientver=&platform=WebFilter&tag=em&filter=2&iscorrection=1&privilege_filter=0&_=1555124510574' #想要爬取别的网页直接修改这个json数据地址就行 r=requests.get(url,headers=headers) soup=BeautifulSoup(r.text,'lxml') title_list=soup.select('.pc_temp_songlist ul li') hash=re.findall(r',"FileHash":"(.*?)"',r.text) hash2=re.findall(r',"FileName":"(.*?)"',r.text) #直接用正则匹配隐藏的数据 print(hash) print(hash2) q=0 for url in hash: url_a=f'https://wwwapi.kugou.com/yy/index.php?r=play/getdata&callback=jQuery1910212680783679835_1555073815772&hash={url}&album_id=18784389' #这个URL不用修改的 c=requests.get(url_a,headers=headers) a=c.text[40:-3] b=re.findall('"play_url":"(.*)","authors":',a)[0] b1=re.sub(r"\\",'',b) f = requests.get(b1) with open(hash2[q]+'.mp3','wb')as d: d.write(f.content) print(hash2[q]) q+=1
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注亿速云行业资讯频道,感谢您对亿速云的支持。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。