任务:微信公众号文章中多个音频文件批量下载
以这个微信公众号文章示例:
https://
mp.weixin.qq.com/s/Xcrr
sq2AUBFlKWabhQjNag
按下F12键,点击网络——媒体,就可以看到音频文件的地址:
查看几个音频文件地址的规律:
https://
res.wx.qq.com/voice/get
voice?mediaid=MzI2ODc4NDc2NF8yMjQ3NTMzNjg1
https://
res.wx.qq.com/voice/get
voice?mediaid=MzI2ODc4NDc2NF8yMjQ3NTMzNjg3
https://
res.wx.qq.com/voice/get
voice?mediaid=MzI2ODc4NDc2NF8yMjQ3NTMzNjkx
只有最后一串字符不一样,查找这串字符:
可以看到在这个标签中出现:
在deepseek中输入提示词:
你是一个Python编程专家,要完成一个批量下载网页中音频的Python脚本,具体步骤如下:
用户输入一个网页URL,接受URL;
解析这个URL;
定位其中所有class="js_editor_audio res_iframe js_uneditable custom_select_card" 的mp-common-mpaudio标签,提取其name属性值,去掉其中的空格,作为音频文件名;
提取其voice_encode_fileid的属性值,前面加上“
https://
res.wx.qq.com/voice/get
voice?mediaid=
”,构成音频下载的URL;
下载音频文件,保存在E盘的weixinaudio文件夹中,音频文件格式为mp3格式;
注意:每一步都要输出信息到屏幕上
Deepseek生成的源代码:
import requests
from bs4 import BeautifulSoup
import os
# 用户输入网页URL
url = input("请输入网页URL: ")
print(f"用户输入的URL是: {url}")
# 发送请求并获取网页内容
response = requests.get(url)
print("网页请求成功,正在解析...")
# 解析网页内容
soup = BeautifulSoup(response.text, 'html.parser')
# 定位所有音频标签并提取信息
audio_tags = soup.find_all('mp-common-mpaudio', class_='js_editor_audio res_iframe js_uneditable custom_select_card')
if audio_tags:
for audio_tag in audio_tags:
name = audio_tag['name'].replace(' ', '')
voice_id = audio_tag['voice_encode_fileid']
audio_url = f"
https://
res.wx.qq.com/voice/get
voice?mediaid=