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利用MethodType绑定方法到类示例代码
Aug 27 Python
Python网络编程之TCP套接字简单用法示例
Apr 09 Python
浅析Python数据处理
May 02 Python
程序员写Python时的5个坏习惯,你有几条?
Nov 26 Python
Python编程中flask的简介与简单使用
Dec 28 Python
Python3.5 Json与pickle实现数据序列化与反序列化操作示例
Apr 29 Python
Python中的类与类型示例详解
Jul 10 Python
Python实现随机生成任意数量车牌号
Jan 21 Python
Python3内置函数chr和ord实现进制转换
Jun 05 Python
keras 解决加载lstm+crf模型出错的问题
Jun 10 Python
python中有帮助函数吗
Jun 19 Python
Python 使用Opencv实现目标检测与识别的示例代码
Sep 08 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
Terran兵种对照表
2020/03/14 星际争霸
根德YB400的电路分析
2021/03/02 无线电
php输出金字塔的2种实现方法
2014/12/16 PHP
基于linnux+phantomjs实现生成图片格式的网页快照
2015/04/15 PHP
PHP基于Redis消息队列实现发布微博的方法
2017/05/03 PHP
laravel 5.3 单用户登录简单实现方法
2019/10/14 PHP
浅析PHP中的 inet_pton 网络函数
2019/12/16 PHP
Extjs学习笔记之九 数据模型(上)
2010/01/11 Javascript
javascript打印html内容功能的方法示例
2013/11/28 Javascript
js+css实现导航效果实例
2015/02/10 Javascript
Nodejs中的this详解
2016/03/26 NodeJs
jQuery移动端日期(datedropper)和时间(timedropper)选择器附源码下载
2016/04/19 Javascript
JavaScript prototype属性详解
2016/10/25 Javascript
利用jQuery插件imgAreaSelect实现获得选择域的图像信息
2016/12/02 Javascript
mpvue将vue项目转换为小程序
2018/09/30 Javascript
Vue 实现前进刷新后退不刷新的效果
2019/06/14 Javascript
[40:17]2018DOTA2亚洲邀请赛 4.5 淘汰赛 LGD vs Liquid 第一场
2018/04/06 DOTA
[46:55]LGD vs Liquid 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/19 DOTA
[01:44]Ti10举办地公布
2019/08/25 DOTA
Python实现的监测服务器硬盘使用率脚本分享
2014/11/07 Python
Python在groupby分组后提取指定位置记录方法
2018/04/20 Python
python3.6.3+opencv3.3.0实现动态人脸捕获
2018/05/25 Python
django 外键model的互相读取方法
2018/12/15 Python
Python项目 基于Scapy实现SYN泛洪攻击的方法
2019/07/23 Python
Django 对象关系映射(ORM)源码详解
2019/08/06 Python
企业治理工作自我评价
2013/09/26 职场文书
出纳工作岗位责任制
2014/02/02 职场文书
幼儿园毕业家长感言
2014/02/10 职场文书
小学优秀班集体申报材料
2014/05/25 职场文书
承诺书格式范文
2014/06/03 职场文书
基层党员群众路线整改措施及努力方向
2014/10/28 职场文书
出差报告怎么写
2014/11/06 职场文书
2016大学生暑期三下乡心得体会
2016/01/23 职场文书
2016年十一促销广告语
2016/01/28 职场文书
浅谈移动端中的视口(viewport)的具体使用
2021/04/13 HTML / CSS
CSS 左边固定宽右边自适应的6种方法
2022/05/15 HTML / CSS