抓取网页音频(BeautifulSoup一个灵活又方便的网页解析库,处理高效,支持多种解析器)
优采云 发布时间: 2021-09-27 19:01抓取网页音频(BeautifulSoup一个灵活又方便的网页解析库,处理高效,支持多种解析器)
2、美汤
一个灵活方便的网页解析库,处理高效,支持多种解析器。
使用它无需编写正则表达式,轻松实现网页信息抓取。
3、安装及介绍:
pip install requests
pip install BeautifulSoup
import requests
from bs4 import BeautifulSoup as bf
二、目标网站
需要手动点击下载mp3文件网站,因为需要下载数百个文件,手动操作比较困难。
三:获取并解析网页源代码
1、使用requests获取目标的源码网站
r = requests.get('http://www.goodkejian.com/ertonggushi.htm')
所有下载链接都存储在标签中,并且具有固定长度。去掉amp后可以直接下载链接;
2、使用BeautifulSoup解析网页内容并从中提取标签
soup = bf(r.text, 'html.parser')
res = soup.find_all('a')
四:下载
经过上面的步骤, res 变成了一个收录所有目标标签的数组。如果要下载网页上的所有mp3文件,只需要循环将res中的元组转换成字符串,经过过滤、裁剪等操作,就变成了一个链接。可以使用request来访问,返回值是mp3文件的二进制表示,直接以二进制的形式写入文件即可。
整个代码如下:
import requests
from bs4 import BeautifulSoup as bf
r = requests.get('http://www.goodkejian.com/ertonggushi.htm')
soup = bf(r.text, 'html.parser')
res = soup.find_all('a')
recorder = 1
# 长度为126的是要找的图标
for i in res:
dst = str(i)
if dst.__len__() == 126:
url1 = dst[9:53]
url2 = dst[57:62]
url = url1 + url2
print(url)
xjh_request = requests.get(url)
with open("./res/" + str(recorder) + ".rar", 'wb') as file:
file.write(xjh_request.content)
file.close()
recorder += 1
print("ok")
以上就是文章《如何在python中抓取并自动下载网页音频文件》的全部内容,感谢阅读!相信大家都有一定的了解,希望分享的内容对大家有所帮助。如果您想了解更多,请关注一宿云行业资讯频道!