python使用beautifulsoup4爬取酷狗音乐代码实例


Posted in Python onDecember 04, 2019

这篇文章主要介绍了python使用beautifulsoup4爬取酷狗音乐代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

小编经常在网上听一些音乐但是有一些网站好多音乐都是付费下载的正好我会点爬虫技术,空闲时间写了一份,截止4月底没有问题的,会下载到当前目录,只要按照bs4库就好,

安装方法: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)
hash1=re.findall(r',"FileName":"(.*?)"',r.text)
#直接用正则匹配隐藏的数据
print(hash)
print(hash1)
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(hash1[q]+'.mp3','wb')as d:
d.write(f.content)
print(hash1[q])
q+=1

爬取酷狗的唯一难点就是hash值的获取找了一个多小时才找到,比网易云好点就是自己不用写一个哈希值,酷狗是自己就存在的能找到,网易云是需要函数生成的。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现代理服务功能实例
Nov 15 Python
python 判断是否为正小数和正整数的实例
Jul 23 Python
Python基于opencv的图像压缩算法实例分析
May 03 Python
Flask框架响应、调度方法和蓝图操作实例分析
Jul 24 Python
在Python文件中指定Python解释器的方法
Feb 18 Python
18个Python脚本可加速你的编码速度(提示和技巧)
Oct 17 Python
Python3.x+迅雷x 自动下载高分电影的实现方法
Jan 12 Python
浅谈Python中re.match()和re.search()的使用及区别
Apr 14 Python
解决python使用list()时总是报错的问题
May 05 Python
Django中和时区相关的安全问题详解
Oct 12 Python
利用python实现汉诺塔游戏
Mar 01 Python
Python字典的基础操作
Nov 01 Python
python3中numpy函数tile的用法详解
Dec 04 #Python
python 实现目录复制的三种小结
Dec 04 #Python
python求绝对值的三种方法小结
Dec 04 #Python
解决Python3下map函数的显示问题
Dec 04 #Python
Django3.0 异步通信初体验(小结)
Dec 04 #Python
在OpenCV里实现条码区域识别的方法示例
Dec 04 #Python
Python绘图实现显示中文
Dec 04 #Python
You might like
《被神捡到的男人》动画化计划进行中!
2020/03/06 日漫
Terran兵种介绍
2020/03/14 星际争霸
ThinkPHP实现跨模块调用操作方法概述
2014/06/20 PHP
php校验表单检测字段是否为空的方法
2015/03/20 PHP
PHP获取文本框、密码域、按钮的值实例代码
2017/04/19 PHP
一个非常实用的php文件上传类
2017/07/04 PHP
PHP使用Nginx实现反向代理
2017/09/20 PHP
thinkPHP5实现数据库添加内容的方法
2017/10/25 PHP
php+laravel依赖注入知识点总结
2019/11/04 PHP
用js实现的一个Flash滚动轮换显示图片代码生成器
2007/03/14 Javascript
ExtJS 2.0实用简明教程 之获得ExtJS
2009/04/29 Javascript
JQuery中$之选择器用法介绍
2011/04/05 Javascript
node.js+express制作网页计算器
2016/01/17 Javascript
Window.Open打开窗体和if嵌套代码
2016/04/15 Javascript
jQuery实现鼠标经过购物车出现下拉框代码(推荐)
2016/07/21 Javascript
AngularJS动态绑定HTML的方法分析
2016/11/07 Javascript
JavaScript日期选择功能示例
2017/01/16 Javascript
解析Vue2.0双向绑定实现原理
2017/02/23 Javascript
前端开发之CSS原理详解
2017/03/11 Javascript
原生js实现form表单序列化的方法
2018/08/02 Javascript
JavaScript实现秒杀时钟倒计时
2019/09/29 Javascript
jQuery实现放大镜案例
2020/10/19 jQuery
WebStorm中如何将自己的代码上传到github示例详解
2020/10/28 Javascript
JS实现简易日历效果
2021/01/25 Javascript
详解微信小程序(Taro)手动埋点和自动埋点的实现
2021/03/02 Javascript
[08:54]DOTA2-DPC中国联赛 正赛 Aster vs LBZS 选手采访
2021/03/11 DOTA
Python格式化css文件的方法
2015/03/10 Python
Python中常见的数据类型小结
2015/08/29 Python
Python实现PS滤镜功能之波浪特效示例
2018/01/26 Python
简单易懂Pytorch实战实例VGG深度网络
2019/08/27 Python
html5使用canvas实现图片下载功能的示例代码
2017/08/26 HTML / CSS
意大利制造的西装、衬衫和针对男士量身定制的服装:Lanieri
2018/04/08 全球购物
飞利浦美国官网:Philips美国
2020/02/28 全球购物
泰海淘:泰国king Power王权免税集团旗下跨境海淘综合型电商
2020/07/26 全球购物
护士自荐信范文
2015/03/25 职场文书
党员电教片《信仰》心得体会
2016/01/15 职场文书