无损音乐免费获取

周杰伦-晴天

周杰伦-稻香

周杰伦-七里香

前言:

        整个活,本人平时喜欢听歌,但奈何每月十元大洋的会员顶我一餐饭,我觉得不值,所以啊,就要稍微去弄点歌来听听,具体咋弄,我们来聊聊!

        ps:楼上三首歌算我请大家的

        

流程分析:

        * 简单来讲会涉及一个资源平台,然后在上面获取音频,需要有歌曲网址接口,音频接口和音频id这几个重要内容。

爬虫基本流程:
一、明确需求
    1.请求网址:https://www.gequbao.com/s/%E5%91%A8%E6%9D%B0%E4%BC%A6
    2.请求目标:歌曲mp4音频链接
二、抓包分析
    1.发送请求:模拟浏览器向网址url地址进行请求访问
     - url:https://www.gequbao.com/s/%E5%91%A8%E6%9D%B0%E4%BC%A6
    2.获取数据:得到数据响应内容
    3.解析数据:提取歌曲名称/歌手/id
    4.发送请求:模拟浏览器向歌曲url地址进行请求访问
     - url:https://www.gequbao.com/api/play_url?id=402856&json=1
    5.获取数据:得到数据响应内容
    6.解析数据:提取歌曲链接
    7.保存数据:保存到本地

代码编写:

①歌曲网址接口,提取歌曲id和歌曲名称

构建一个基本请求做提取,将拿到的内容进行数据清洗去重

import requests
from parsel import Selector

headers = {}
cookies = {}
url = "https://www.gequbao.com/s/%E5%91%A8%E6%9D%B0%E4%BC%A6"
response = requests.get(url, headers=headers, cookies=cookies)
print(response)
selector = Selector(response.text)
rows = selector.css('.card-text .row')[1:]
for row in rows:
    title = row.css('.text-primary::text').get().strip()
    name = row.css('.text-success::text').get().strip()
    music_id = row.css('.col-5 a::attr(href)').get().split('/')[-1]
    print(title, name, music_id)

②提取歌曲链接,拼接网址

直接就完美搞定啦!!

总结:

 适合新手入门的小案例,感兴趣的朋友可以一试!后面给他做了个小升级,完整的程序可以私信

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值