Update Bili.java
This commit is contained in:
parent
4d6bdcc900
commit
6cec300bc1
|
|
@ -193,27 +193,34 @@ public class Bili extends Spider {
|
||||||
Resp resp = Resp.objectFrom(json);
|
Resp resp = Resp.objectFrom(json);
|
||||||
Dash dash = resp.getData().getDash();
|
Dash dash = resp.getData().getDash();
|
||||||
|
|
||||||
StringBuilder videoList = new StringBuilder();
|
StringBuilder video = new StringBuilder();
|
||||||
StringBuilder audioList = new StringBuilder();
|
StringBuilder audio = new StringBuilder();
|
||||||
for (Media video : dash.getVideo()) {
|
findAudio(dash, audio);
|
||||||
if (video.getId().equals(qn)) {
|
findVideo(dash, video, qn);
|
||||||
videoList.append(getMedia(video));
|
boolean empty = video.length() == 0 && dash.getVideo().size() > 0;
|
||||||
}
|
if (empty) findVideo(dash, video, dash.getVideo().get(0).getId());
|
||||||
}
|
|
||||||
if (videoList.length() == 0 && dash.getVideo().size() > 0) {
|
String mpd = getMpd(dash, video.toString(), audio.toString());
|
||||||
videoList.append(getMedia(dash.getVideo().get(0)));
|
String url = "data:application/dash+xml;base64," + Base64.encodeToString(mpd.getBytes(), 0);
|
||||||
}
|
return Result.get().url(url).dash().header(getMember()).string();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void findAudio(Dash dash, StringBuilder sb) {
|
||||||
for (Media audio : dash.getAudio()) {
|
for (Media audio : dash.getAudio()) {
|
||||||
for (String key : audios.keySet()) {
|
for (String key : audios.keySet()) {
|
||||||
if (audio.getId().equals(key)) {
|
if (audio.getId().equals(key)) {
|
||||||
audioList.append(getMedia(audio));
|
sb.append(getMedia(audio));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
String mpd = getMpd(dash, videoList.toString(), audioList.toString());
|
private void findVideo(Dash dash, StringBuilder sb, String qn) {
|
||||||
String url = "data:application/dash+xml;base64," + Base64.encodeToString(mpd.getBytes(), 0);
|
for (Media video : dash.getVideo()) {
|
||||||
return Result.get().url(url).dash().header(getMember()).string();
|
if (video.getId().equals(qn)) {
|
||||||
|
sb.append(getMedia(video));
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private String getMedia(Media media) {
|
private String getMedia(Media media) {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue