mirror of
https://github.com/TeamNewPipe/NewPipeExtractor.git
synced 2024-12-14 22:30:33 +05:30
Bandcamp: parse date
This commit is contained in:
parent
6822fe3dc8
commit
1be20ceeec
@ -77,7 +77,7 @@ public class BandcampRadioStreamExtractor extends BandcampStreamExtractor {
|
||||
@Nullable
|
||||
@Override
|
||||
public String getTextualUploadDate() {
|
||||
return showInfo.getString("published_date").replace(" 00:00:00 GMT", "");
|
||||
return showInfo.getString("published_date");
|
||||
}
|
||||
|
||||
@Nonnull
|
||||
|
@ -20,7 +20,11 @@ import org.schabi.newpipe.extractor.stream.*;
|
||||
import javax.annotation.Nonnull;
|
||||
import javax.annotation.Nullable;
|
||||
import java.io.IOException;
|
||||
import java.text.ParseException;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Calendar;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
|
||||
@ -96,13 +100,21 @@ public class BandcampStreamExtractor extends StreamExtractor {
|
||||
@Nullable
|
||||
@Override
|
||||
public String getTextualUploadDate() {
|
||||
return current.getString("publish_date").replaceAll(" \\d+:\\d+:\\d+ .+", "");
|
||||
return current.getString("publish_date");
|
||||
}
|
||||
|
||||
@Nullable
|
||||
@Override
|
||||
public DateWrapper getUploadDate() {
|
||||
return null;
|
||||
public DateWrapper getUploadDate() throws ParsingException {
|
||||
try {
|
||||
Date date = new SimpleDateFormat("dd MMM yyyy HH:mm:ss zzz", Locale.ENGLISH).parse(getTextualUploadDate());
|
||||
Calendar calendar = Calendar.getInstance();
|
||||
calendar.setTime(date);
|
||||
return new DateWrapper(calendar, false);
|
||||
} catch (ParseException e) {
|
||||
e.printStackTrace();
|
||||
throw new ParsingException("Could not extract date", e);
|
||||
}
|
||||
}
|
||||
|
||||
@Nonnull
|
||||
|
@ -12,6 +12,7 @@ import org.schabi.newpipe.extractor.services.bandcamp.extractors.BandcampStreamE
|
||||
import org.schabi.newpipe.extractor.stream.StreamExtractor;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.Calendar;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
import static org.schabi.newpipe.extractor.ServiceList.Bandcamp;
|
||||
@ -57,7 +58,11 @@ public class BandcampRadioStreamExtractorTest {
|
||||
@Test
|
||||
public void testGetTextualUploadDate() throws ParsingException {
|
||||
assertEquals("16 May 2017", e.getTextualUploadDate());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testUploadDate() throws ParsingException {
|
||||
assertEquals(136, e.getUploadDate().date().get(Calendar.DAY_OF_YEAR));
|
||||
}
|
||||
|
||||
@Test
|
||||
|
@ -13,6 +13,7 @@ import org.schabi.newpipe.extractor.services.bandcamp.extractors.BandcampStreamE
|
||||
import org.schabi.newpipe.extractor.stream.StreamExtractor;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.Calendar;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
@ -61,8 +62,8 @@ public class BandcampStreamExtractorTest {
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testUploadDate() {
|
||||
assertEquals("27 Sep 2019", extractor.getTextualUploadDate());
|
||||
public void testUploadDate() throws ParsingException {
|
||||
assertEquals(270, extractor.getUploadDate().date().get(Calendar.DAY_OF_YEAR));
|
||||
}
|
||||
|
||||
@Test
|
||||
|
Loading…
Reference in New Issue
Block a user