NewPipeExtractor/extractor/src/main/java/org/schabi/newpipe/extractor/services/bandcamp/extractors/streaminfoitem/BandcampSearchStreamInfoIte...

58 lines
1.7 KiB
Java
Raw Normal View History

package org.schabi.newpipe.extractor.services.bandcamp.extractors.streaminfoitem;
import org.jsoup.nodes.Element;
import org.schabi.newpipe.extractor.exceptions.ParsingException;
2022-03-17 17:13:25 +01:00
import org.schabi.newpipe.extractor.services.bandcamp.extractors.BandcampExtractorHelper;
2021-09-01 20:40:00 +02:00
import javax.annotation.Nullable;
public class BandcampSearchStreamInfoItemExtractor extends BandcampStreamInfoItemExtractor {
2022-03-18 17:50:25 +01:00
private final Element resultInfo;
private final Element searchResult;
2022-03-18 17:50:25 +01:00
public BandcampSearchStreamInfoItemExtractor(final Element searchResult,
final String uploaderUrl) {
super(uploaderUrl);
this.searchResult = searchResult;
resultInfo = searchResult.getElementsByClass("result-info").first();
}
@Override
public String getUploaderName() {
final String subhead = resultInfo.getElementsByClass("subhead").text();
final String[] splitBy = subhead.split("by ");
if (splitBy.length > 1) {
return splitBy[1];
} else {
return splitBy[0];
}
}
2021-09-01 20:40:00 +02:00
@Nullable
@Override
2021-09-02 12:42:37 +02:00
public String getUploaderAvatarUrl() {
2021-09-01 20:40:00 +02:00
return null;
}
@Override
public String getName() throws ParsingException {
return resultInfo.getElementsByClass("heading").text();
}
@Override
public String getUrl() throws ParsingException {
return resultInfo.getElementsByClass("itemurl").text();
}
@Override
public String getThumbnailUrl() throws ParsingException {
2022-03-17 17:13:25 +01:00
return BandcampExtractorHelper.getThumbnailUrlFromSearchResult(searchResult);
}
@Override
public long getDuration() {
return -1;
}
}