20行Python代码爬取2W多条音频文件素材~

109 阅读3分钟

url = 'sc.chinaz.com/yinxiao/'

headers = {

'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36'

}

response = requests.get(url=url, headers=headers)

print(response.text)

在这里插入图片描述

但是返回数据有中文乱码,编码出现了问题,所以咱们只需要转码一下就可以了

response.encoding = response.apparent_encoding

在这里插入图片描述

解析数据


import parsel

selector = parsel.Selector(response.text)

urls = selector.css('#musiclist .n1::attr(thumb)').getall()

titles = selector.css('#musiclist .z a::attr(alt)').getall()

data = zip(urls, titles)

for i in data:

print(i)

在这里插入图片描述

保存数据


response_2 = requests.get(url=download_url, headers=headers)

filename = '路径' + title + '.mp3'

with open(filename, mode='wb') as f:

f.write(response_2.content)

在这里插入图片描述

一页的音频文件就都保存到本地文件了

多页爬取音频文件代码


import requests

import parsel

for page in range(1, 603):

url = 'sc.chinaz.com/yinxiao/ind…

headers = {

'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36'

}

response = requests.get(url=url, headers=headers)

response.encoding = response.apparent_encoding

selector = parsel.Selector(response.text)

urls = selector.css('#musiclist .n1::attr(thumb)').getall()

titles = selector.css('#musiclist .z a::attr(alt)').getall()

data = zip(urls, titles)

for i in data:

print(i)

download_url = i[0]

title = i[1]

response_2 = requests.get(url=download_url, headers=headers)

filename = '路径' + title + '.mp3'

with open(filename, mode='wb') as f:

f.write(response_2.content)

最后

Python崛起并且风靡,因为优点多、应用领域广、被大牛们认可。学习 Python 门槛很低,但它的晋级路线很多,通过它你能进入机器学习、数据挖掘、大数据,CS等更加高级的领域。Python可以做网络应用,可以做科学计算,数据分析,可以做网络爬虫,可以做机器学习、自然语言处理、可以写游戏、可以做桌面应用…Python可以做的很多,你需要学好基础,再选择明确的方向。这里给大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

👉Python所有方向的学习路线👈

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

👉Python必备开发工具👈

工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。

👉Python全套学习视频👈

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

👉实战案例👈

学python就与学数学一样,是不能只看书不做题的,直接看步骤和答案会让人误以为自己全都掌握了,但是碰到生题的时候还是会一筹莫展。

因此在学习python的过程中一定要记得多动手写代码,教程只需要看一两遍即可。

👉大厂面试真题👈

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

了解详情:docs.qq.com/doc/DSnl3ZG…