如何解析音频文件并通过jsoup,Android Studio下载?

How to parse an audio file and download it by jsoup , Android Studio?

提问人:Filayeng 提问时间:10/9/2022 最后编辑:Filayeng 更新时间:3/24/2023 访问量:77

问:

网站 HTML 代码

Elements elementsVoice = document.select("span[class='daud']>audio");

我想从链接下载照片中的音频文件。但是当我编写代码时,没有数据。 我可以使用 jsoup 下载这些文件吗,你能帮忙吗? 谢谢

java android android-studio jsoup html 解析

评论


答:

0赞 Filayeng 3/24/2023 #1

enter image description here

该代码获取所有音频文件源。

Elements h2 = document.select("source[type='audio/mpeg']");

该代码解析所有音频文件。

String[] splitUrl = (h2.toString()).split("src=");

代码获取确切音频文件的地址。

mp3Url = ((splitUrl[1]).replace(">",""));
String arg = (mp3Url.replace("\"","")).replace("<source type=audio/mpeg","");

这些代码结合了要下载的音频 URL。

URL url1;
URL reconUrl1 = null;
try {
    url1 = new URL(strUrl1);
    reconUrl1 = new URL(url1,arg);     
    }

catch (MalformedURLException e){
     e.printStackTrace();
   }

这些代码结合了要下载的音频 URL。

try {
    URLConnection conn = new URL(reconUrl1.toString()).openConnection();
    InputStream is = conn.getInputStream();
    String urlEnd = (getExternalFilesDir + name + "_voice.mp3");
    OutputStream outstream = new FileOutputStream(new File(urlEnd));
    byte[] buffer = new byte[4096];
    int len;
    while ((len = is.read(buffer)) > 0) {
        outstream.write(buffer, 0, len);
    }
}

catch (Exception e){
     e.printStackTrace();
}