Python爬虫篇:实现铃声采集

简介: Python爬虫篇:实现铃声采集

前言
大家好,我是辣条哥

本篇只是进行知识分享,切勿用作其他用途

本篇只是进行知识分享,切勿用作其他用途

本篇只是进行知识分享,切勿用作其他用途,重要的事情说三遍

目录
前言
工具准备
项目思路解析
简易源码分享
总结
工具准备
开发工具:pycharm
开发环境:python3.7, Windows10
使用工具包:requests,lxml

项目思路解析
最近在找一些视频的背景音乐,无意中找到了当前这个网址,里面的音频还是很全面的,种类也多,唯一美中不足的是当前这个页面是需要进行收米的,在对这个网页进行一些简单分析之后,发现当前这个网页的加密是没有做的很严格的,只要你稍稍会点技术就可以对其进行数据采集。
首先找到当前网页需要的音频页面数据,先获取到准确的数据页面信息

当前这个网页的音频数据都是需要进行付费下载的,但是这个网址渲染的页面是静态数据,对外有去暴露了他的MP3的播放地址,可以在当前页面直接抓包获取到,这个网页对鼠标右击进行禁用,可以使用快捷键f12打开当前的页面信息,定位到页面数据

可以看到这个就是我们想要的mp3的播放地址我们可以尝试在浏览器页面对这个网址进行访问看看能不能获取到我们想要的音频数据,复制mp3地址在页面进行访问

可以看到就是我们想要的网址数据信息,现在需要对当前网址发送请求获取到页面数据,进行数据的筛选。

url = 'https://www.tukuppt.com/peiyue/zonghe_0_0_0_0_0_0_8.html'

发送请求

response = requests.get(url)
1
2
3
发送网之后我们通过xpath进行数据的提取,xpath有自己独立的语法,我们需要对xpath语法进行简单的认识,一些基础定义语法格式。

表达式 描述
nodename 选取此节点的所有子节点。
/ 从根节点选取。
// 从匹配选择的当前节点选择文档中的节点,而不考虑它们的位置。
. 选取当前节点。
… 选取当前节点的父节点。
@ 选取属性。
通过独立的语法进行提取筛选,要是对语法不是特别熟练的可以通过浏览器上的xpath插件进行练习,能帮助大家更好的去认识xpath语法

提取出播放地址,以及音频的标题,因为之后我们是需要把数据保存在本地的,需要用中文来进行命名,在通过xpath语法进行提取就行,在使用xpath语法时需要注意,xpath是不能直接对html数据进行处理的,我们需要使用lxml的库将数据转换成对象数据
html_data = etree.HTML(response.text)
1
通过xpath所提取的数据为列表,我们可以通过循环的方式取出列表里的每个值,提取之后在次对音频播放地址发送请求,这个网址还需要拼接上https的请求协议,我们在网页上进行提取到的数据是没有请求协议的如果直接请求是会报错的,通过requests库再次发送请求,获取的音频数据是进制数据,将获取到的进制数据保存在本地。注意我们的数据写入时是进制数据,写入的模式为wb,到此大功告成

简易源码分享
++本篇文章只是进行知识分享,切勿用作其他用途++

import requests # 发送网络请求的工具包 库 底上库 模块
from lxml import etree # 转换数据的库

url = 'https://www.tukuppt.com/peiyue/zonghe_0_0_0_0_0_0_8.html'

发送请求

response = requests.get(url)

print(response.text)

筛选数据 html xpath 正则 bs4 css选择器 pyquery

html_data = etree.HTML(response.text)

print(html_data)

mp3_url_list = html_data.xpath('//div[@class="b-box"]/dl/audio/source/@src')
title_list = html_data.xpath('//div[@class="b-box"]/dl/dt[@class="info"]/a[@class="title"]/text()')

print(mp3_url_list) # 列表 [1,12,34,5]

for title, mp3_url in zip(title_list, mp3_url_list):

# print(title)
# print(mp3_url)
result = requests.get('https:' + mp3_url)
# print(result.content)
# 保存数据     服务器   数据库   mysql   mongodb    文本数据
# 文件操作    读取   read   r   写入  w    追加数据   a
with open('lingsheng/' + title + '.mp3', 'wb')as f:
    f.write(result.content)
    print('正在下载{}'.format(title))

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
总结
不懂的或者说想要别的源码的,底下留言源码,或者直接找底下名片找我,再次提醒不能用来胡作非为,这是供大家学习参考的,最后祝大家学业有成

————————————————
版权声明:本文为CSDN博主「五包辣条!」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/AI19970205/article/details/124820300

目录
相关文章
|
4天前
|
数据采集 数据可视化 数据挖掘
Python爬虫实战:抓取网站数据并生成报表
本文将介绍如何使用Python编写简单而高效的网络爬虫,从指定的网站上抓取数据,并利用数据分析库生成可视化报表。通过学习本文内容,读者将能够掌握基本的爬虫技术和数据处理方法,为日后开发更复杂的数据采集与分析工具打下坚实基础。
|
3天前
|
数据采集 数据可视化 数据挖掘
使用Python编写Web爬虫实现数据采集与分析
在当今信息化时代,数据是企业发展和决策的重要依据。本文将介绍如何使用Python编写Web爬虫来实现对特定网站数据的自动采集,并结合数据分析技术,为读者展示如何利用爬虫技术获取有价值的信息并进行有效的数据处理和分析。
|
3天前
|
数据采集 数据挖掘 Python
Python 爬虫实战
Python爬虫可以用于爬取淘宝商品数据,并对这些数据进行数据分析。下面是一个简单的示例,展示如何使用Python爬取淘宝商品数据并进行数据分析。
|
5天前
|
数据采集 机器学习/深度学习 数据可视化
分享68个Python爬虫源码总有一个是你想要的
分享68个Python爬虫源码总有一个是你想要的
23 0
|
4天前
|
数据采集 存储 数据挖掘
Python 爬虫实战之爬拼多多商品并做数据分析
在上面的代码中,我们使用pandas库创建DataFrame存储商品数据,并计算平均价格和平均销量。最后,我们将计算结果打印出来。此外,我们还可以使用pandas库提供的其他函数和方法来进行更复杂的数据分析和处理。 需要注意的是,爬取拼多多商品数据需要遵守拼多多的使用协议和规定,避免过度请求和滥用数据。
|
5天前
|
数据采集 负载均衡 应用服务中间件
Python爬虫之Splash负载均衡配置#7
Splash负载均衡配置【2月更文挑战第28天】
14 0
|
6天前
|
数据采集 数据可视化 Java
分享66个Python爬虫源码总有一个是你想要的
分享66个Python爬虫源码总有一个是你想要的
18 1
|
7天前
|
数据采集 存储 数据挖掘
Python 爬虫实战之爬拼多多商品并做数据分析
Python爬虫可以用来抓取拼多多商品数据,并对这些数据进行数据分析。以下是一个简单的示例,演示如何使用Python爬取拼多多商品数据并进行数据分析。
|
10天前
|
数据采集 存储 开发者
Python爬虫实战:打造高效数据采集工具
本文将介绍如何利用Python编写一个高效的网络爬虫,实现对特定网站数据的快速抓取与处理,帮助开发者更好地应对大规模数据采集的需求。
|
11天前
|
JSON JavaScript 文件存储
Python爬虫之文件存储#5
TXT文件存储、JSON文件存储、CSV文件存储【2月更文挑战第16天】
30 2
Python爬虫之文件存储#5

相关产品

  • 云迁移中心