package test;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.URL;
import java.net.URLConnection;
import java.util.Iterator;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.element;
import org.jsoup.select.Elements;
//https://www.dj169.com/dj/xc-new-1.html
public class mp3 {
//mp3存放路径
private static String downfile="D:\\mp3\\";
//下载方法1
public static void main(String[] args) throws Exception {
Document document= Jsoup.connect("https://www.dj169.com/search/?key=HIFI&page=11.html").get();
Elements elements= document.select("#lists li");
for (Element element : elements) {
String mp3name="";
String mp3url="";
Elements elements2= element.getAllElements();
mp3url=elements2.get(2).attr("href");
mp3name=elements2.get(2).text();
System.out.println(mp3url);
System.out.println(mp3name);
Document document2= Jsoup.connect("https://www.dj169.com/"+mp3url).get();
Elements elements3= document2.select("script");
Element element2=elements3.get(1);
String url1=element2.html();
String url2=element2.html().substring(url1.indexOf("danceFilePath = \"")+"danceFilePath = \"".length(), url1.indexOf("\",wname"));
System.out.println(url2);
String houzhui=url2.substring(url2.indexOf("."), url2.length());
downLoadMp3FromUrl("https://play.dj169.com/"+url2,mp3name+ houzhui);
}
}
//下载方法2
//https://www.html.cn/tool/html2js/
public static void main2(String[] args) throws Exception {
String htmll="<div class=\"layui-tab-item layui-show plist\" style=\"height: 355px;\"><li><span class=\"layui-badge\">1</span><a href=\"/dj/p25466.html\" target=\"d\">「轻音乐」醉美女人心 伤感抒情音乐CD碟 艾格美DJ霆勇</a><em><i class=\"ico ico-down\" id=\"25466\"></i><i class=\"ico ico-del\" id=\"25466|1\"></i></em></li><li><span class=\"layui-badge\">2</span><a href=\"/dj/p25857.html\" target=\"d\">珍藏极品七声道SOS环绕全发烧磁性女声》车载超爽碟</a><em><i class=\"ico ico-down\" id=\"25857\"></i><i class=\"ico ico-del\" id=\"25857|1\"></i></em></li><li><span class=\"layui-badge\">3</span><a href=\"/dj/p46649.html\" target=\"d\">DJ权少【抖音快手冠军神曲首首动听】热歌Top榜中榜音乐车载连碟</a><em><i class=\"ico ico-down\" id=\"46649\"></i><i class=\"ico ico-del\" id=\"46649|1\"></i></em></li></div>";
Document document= Jsoup.parse(htmll);
Elements elements= document.select(".layui-tab-item.layui-show.plist li a");
for (Element element : elements) {
String mp3name="";
String mp3url="";
mp3url=element.attr("href");
mp3name=element.text();
//System.out.println(mp3url);
//System.out.println(mp3name);
Document document2= Jsoup.connect("https://www.dj169.com/"+mp3url).get();
Elements elements3= document2.select("script");
Element element2=elements3.get(1);
String url1=element2.html();
String url2=element2.html().substring(url1.indexOf("danceFilePath = \"")+"danceFilePath = \"".length(), url1.indexOf("\",wname"));
System.out.println(url2);
String houzhui=url2.substring(url2.indexOf("."), url2.length());
downLoadMp3FromUrl("https://play.dj169.com/"+url2,mp3name+ houzhui);
}
}
//下载mp3流
static void downLoadMp3FromUrl(String downloadUrl, String filename) throws Exception{
URL download = new URL(downloadUrl);
URLConnection con = download.openConnection();
InputStream is = con.getInputStream();
byte[] bs = new byte[1024];
int len;
OutputStream os = new FileOutputStream(downfile+filename);
while((len = is.read(bs)) != -1) {
os.write(bs, 0, len);
}
os.close();
is.close();
}
}
jar包下载
https://jsoup.org/download
快手mp3背景音乐怎么下载