没事脱脱发,Python爬取“手机铃声”网站的音频文件

news/2024/5/19 8:25:13/文章来源:https://blog.csdn.net/qq_44741467/article/details/117638677

一、目标网站:https://www.13400.com/

二、获取最近铃声模块的音频内容

三、涉及库:request、bs4、xpinyin、time

开干!!!!

1.检查网页元素

我发现歌曲名字都在div id="tagcd8a824ad1a7c8b52ecdcbc4e2875538"标签下

于是很简单的就取到歌曲名,但是要方便操作,我要把它存在一个列表里

点击一个音乐进去找到下载,检查元素发现这个路径

于是复制到浏览器我发现了竟然直接跳出下载

神奇的是每个路径除了后后面的歌曲缩写不一样,剩下的都一样,于是我找到了歌曲的下载路径

url ="https://www.13400.com/"
headers={"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.77 Safari/537.36"}
#发送请求,获得响应对象
response =requests.get(url,headers=headers)

这里的header报头在以下位置

选择network,并选择第一个

看到以下界面,复制指内容

这里我定义了两个列表用来保存歌曲名字

#info,zhongwen用来保存标签内歌曲名字
info=[]
zhongwen = []

判断请求是否正常,并获取歌曲名

#判断是否请求正常
if(response.status_code)==200:#页面格式为lxml,创建bs对象bs=BeautifulSoup(response.content.decode("UTF-8"),"lxml")listContent = bs.find("div",attrs={"id":"tagcd8a824ad1a7c8b52ecdcbc4e2875538"})lis=listContent.find_all("li")# print(lis)

到这已经取到标签内容,下面将li标签内容存到列表中

 for li in lis:#循环将歌名存入列表中方便使用name =li.text#存两份一份用来保存中文名info.append(name)zhongwen.append(name)

将中文转换成英文,并且奖所有的-去除,将歌曲与人名之间用-连接

    pinyinname=[]pinyinname=infoprint(info)test=[]test = Pinyin()#用于将中文转换成英文for i in range(0,len(info)):pinyinname[i] = test.get_pinyin(info[i])pinyinname[i]=pinyinname[i].replace("-","")pinyinname[i]=pinyinname[i].replace(" ","-")#输出查看英文歌曲表,正常print(pinyinname)#输出查看中文歌曲表,正常print(zhongwen)

调试结果

到这步基本就完成取歌曲了,下面开始下载音乐(注释很详细我就不说了)

 #循环下载歌曲for i in range(0, len(pinyinname)):#歌曲下载地址经过查看为  "https://m3.8js.net:99/20210522/" + pinyinname[i] + ".mp3"  格式songUrl = "https://m3.8js.net:99/20210522/" + pinyinname[i] + ".mp3"songName = zhongwen[i]# 请求文件地址,获取文件资源,存数据data = requests.get(songUrl, headers=headers)# 将数据文件保存到指定目录with open(r"music/{}.mp3".format(songName), "ab") as file:file.write(data.content)print("正在下载第", i + 1, "首")time.sleep(0.5)

完整代码:

#爬取网页音频文件,格式为.mp3
#导入包
import time
import requests
import csv
from xpinyin import Pinyin
from bs4 import BeautifulSoup
url ="https://www.13400.com/"
headers={"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.77 Safari/537.36"}
#发送请求,获得响应对象
response =requests.get(url,headers=headers)
print(response.status_code)
#info,zhongwen用来保存标签内歌曲名字
info=[]
zhongwen = []
#判断是否请求正常
if(response.status_code)==200:#页面格式为lxml,创建bs对象bs=BeautifulSoup(response.content.decode("UTF-8"),"lxml")listContent = bs.find("div",attrs={"id":"tagcd8a824ad1a7c8b52ecdcbc4e2875538"})lis=listContent.find_all("li")# print(lis)for li in lis:#循环将歌名存入列表中方便使用name =li.text#存两份一份用来保存中文名info.append(name)zhongwen.append(name)pinyinname=[]pinyinname=infoprint(info)test=[]test = Pinyin()#用于将中文转换成英文for i in range(0,len(info)):pinyinname[i] = test.get_pinyin(info[i])pinyinname[i]=pinyinname[i].replace("-","")pinyinname[i]=pinyinname[i].replace(" ","-")#输出查看英文歌曲表,正常print(pinyinname)#输出查看中文歌曲表,正常print(zhongwen)#循环下载歌曲for i in range(0, len(pinyinname)):#歌曲下载地址经过查看为  "https://m3.8js.net:99/20210522/" + pinyinname[i] + ".mp3"  格式songUrl = "https://m3.8js.net:99/20210522/" + pinyinname[i] + ".mp3"songName = zhongwen[i]# 请求文件地址,获取文件资源,存数据data = requests.get(songUrl, headers=headers)# 将数据文件保存到指定目录with open(r"music/{}.mp3".format(songName), "ab") as file:file.write(data.content)print("正在下载第", i + 1, "首")time.sleep(0.5)
else:print("url解析失败!")

我这里写的是相对路径,即在项目文件夹内

运行结果

完成!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_897736.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

《阿勇java建站教程》1.5.1-css兼容

1.5.1-css兼容 感谢你阅读这篇文章,希望你继续阅读《阿勇java建站教程》的其他文章! 上节内容(《1.5-css样式使用》)说的是css样式的基本使用,并无高深的内容,一切应用都应该在实践中体现,将来的…

《阿勇java建站教程》1.7-方便快捷的编码工具

1.7-方便快捷的编码工具 感谢你阅读这篇文章,希望你继续阅读《阿勇java建站教程》的其他文章! 在之前的6节内容中,我向大家介绍了html标签,css样式,javaScript客户端脚本,很感谢大家的支持&#xff0…

@@@@@TopNet Structural Point Cloud Decoder(补全,项目网站404)(8.23)

拓扑(Topology) Relate WorkDecoder 今天开始学习这篇论文了,刚上来就被一个叫作拓扑的东西吸引到了,虽然接触了点云、体素这些用来表示三维物体的方式,但是拓扑还是第一次听说,因此特地上网查了一下“拓扑…

有用的在线图片处理网站(证件照替换背景蓝色)

1、在线修改图片大小比如1寸,2寸等,可以用这个网站 改图宝 - 在线修改照片大小尺寸工具改图宝是一个在线修改图片(照片)大小和尺寸的免费软件,可把上传照片调整或裁剪为一寸、两寸等尺寸,并能对图片进行压缩大小、修改分辨率、旋…

优化网站加载速度的14个技巧

优化了加载速度的网站不仅可以提高其搜索引擎的排名,同时也可以降低网站的跳出率,提高其转换率,还能提供更好的终端用户体验,这是当今基于Web环境取得成功的关键。 下面我将介绍几个优化网站加载网页速度的简单方法,一…

2018年中小型B2B或B2C网站如何突破?

大型企业阿里等,无论在市场,还是融资,还是运行上,都是非常有经验!可以说是B2B或B2C行业的航空母舰。而中小型B2B或B2C网站如何找到自己的突破点呢?   就拿国家方面建的B2B免费网站,据说商务部…

2018年网络营销或SEO人员如何巧用自媒体?有干货案例分享

在网络营销SEO人员的眼中,能否快速排名,快速扩大在搜索引擎的各渠道排名,是网络营销人员或SEOer的本职工作;也是提高转化效果的关键渠道!是否可以巧用自媒体呢?干货案例的数据可以说明一切! 对S…

网络营销SEO中, 最大的难题, 张开辉给您解决方案!

网络营销SEO中的最大的难题:网络上,您现在的产品或服务,网络上到处都有;那么多的曝光信息中,自家的却迟迟难曝光或者根本说不上排名! 阅读全文,就可找到张开辉给您的解决方案! SEO…

外贸网站最新的英文在线跟踪聊天咨询管理软件

十几年前,有了解外贸英文网站上的在线跟踪聊天咨询及简单管理软件;当时觉得只需要Email就可以了。老外必竟常用Email,网页上留Email, 老外就可以联系到我们。 当时也出现很多英文版的在线跟踪聊天咨询软件,且都是免费提供&#xf…

外贸SEO与电子邮件推广是如何结合在一起,并产生效果的?

现在很多人搞SEO,搞SEM!搞引擎排名,这些被认为是SEO的基本工作职责! 其实SEO还有另外一个重要功能,因为对引擎算法熟悉,因此在搜索信息方面,会比不熟悉SEO的强很多! (上…

外贸多语言网站SEO设计,如何实现微信自定义分享?

众所周知,现在越来越多的老外都有使用微信。如果官网的分享能直接对接SNS软件,能自定义设置分享的参数,将能大大提高老外的阅读率和成交率!对SNS进行SEO设计,也是近年来SEO人员的重要职责! 现在很多自适应…

对微信小程序,如何做好WSEO优化,达到精准引流?

前几天,在朋友圈,看到有人说找些聊天资料,非常不方便!这里我就不解答如何在聊天资料中找资料。我到是想起,WSEO,微信搜索引擎排名或营销。 这里的W,就是WeChat 微信的首字母缩写了。SEO 就是搜索引擎排名的…

2018年SEO网络营销新技巧,如何让新网站快速收录与排名

十几年前,没有几家搞SEO。当时很多的企业,无论是国内还是外贸企业,当时很多还甚至连个介绍性的网页都没有,更不用说是网站了。 主要原因是一是当时域名和空间,都是比较贵的。我记得当时COM的域名,注册及每…

2018年最新流行建站:融媒体多合一营销网站

如果要说2018年最新流行的网站是什么样的网站?张开辉可以果断地告诉您:融媒体多合一或营销型网站! 我们先来看一下,前十几年前非常流行的论坛网站:基本要么技术升级;要么勉强维护中!总体上数量…

融媒体网络营销WSEO案例分享:两天内与大型网站有相同排名

张开辉常想这么 个问题:融媒体网络营销的核心内容源即网站,在百度搜索引擎上,到底有什么优势?如何比较及测试这些参数? 偶然机会,遇到一个展会需要排名推广!各项测试条件基本充分! …

突破:融媒体网站WSEO首发微信点击跟踪方法!

很多的老板或经理曾问过我,怎么样才能跟踪到发送到微信群的文章,有没有被点击?有多少点击?能不能分析到转发到朋友圈的文章,有没有被点击,有多少人进行了点击?能不能分析到QQ群的文章&#xff0…

别人得用三个月,融媒体网站仅需两天,排名上首页

前几周一直忙于融媒体网站的的筹备、策划、程序对接工作;前几天恰好为客家人比较大的节日-七月半,也抽空进行工作;虽非常辛苦,一经测试,结果大吃一惊:融媒体网站仅用两天不到,排名上了首页。 小…

网站联系表单,honeypot蜜罐理论及操作技术,诱饵机器人

前十几年前大都数的网站,都配联系表单!现在是基本任何网站都配联系表单! 前几年跟格拉思的陈总,聊天时,他有给我看,每天网站的联系表单中,都收到大量的联系信息! 我还以为&#xf…

大型网站技术架构详解 之一 大型网站架构演化

1. 大型网站架构演化 如果把20世纪90年代初CERN(欧洲核子研究组织)正式发布Web标准和第一个Web服务的出现当作互联网站的开始,那么只经历了20多年的时间,但是时至今日,互联网对人们的生活产生了巨大的改变。同时也看到…

架构 之四 瞬时响应:网站的高性能架构

网站的性能是客观的指标,可以具体体现到响应时间、吞吐量等技术指标,同时也是主观的感受,不同的用户感受不同。 4.1 网站性能测试 不同视角下的网站性能有不同的标准,也有不同的手段。 4.1.1 不同视角下的网站性能 1. 用户视角…