Fix fallback method is not tried on exception
in YoutubeChannelInfoItem.getUrl()
This commit is contained in:
parent
6d504e0883
commit
94e7f0d3ab
|
@ -56,19 +56,25 @@ public class YoutubeChannelInfoItemExtractor implements ChannelInfoItemExtractor
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getUrl() throws ParsingException {
|
public String getUrl() throws ParsingException {
|
||||||
String buttonTrackingUrl = el.select("button[class*=\"yt-uix-button\"]").first()
|
try {
|
||||||
.attr("abs:data-href");
|
String buttonTrackingUrl = el.select("button[class*=\"yt-uix-button\"]").first()
|
||||||
|
.attr("abs:data-href");
|
||||||
|
|
||||||
Pattern channelIdPattern = Pattern.compile("(?:.*?)\\%252Fchannel\\%252F([A-Za-z0-9\\-\\_]+)(?:.*)");
|
Pattern channelIdPattern = Pattern.compile("(?:.*?)\\%252Fchannel\\%252F([A-Za-z0-9\\-\\_]+)(?:.*)");
|
||||||
Matcher match = channelIdPattern.matcher(buttonTrackingUrl);
|
Matcher match = channelIdPattern.matcher(buttonTrackingUrl);
|
||||||
|
|
||||||
if (match.matches()) {
|
if (match.matches()) {
|
||||||
return YoutubeChannelExtractor.CHANNEL_URL_BASE + match.group(1);
|
return YoutubeChannelExtractor.CHANNEL_URL_BASE + match.group(1);
|
||||||
} else {
|
}
|
||||||
|
} catch(Throwable ignored) {}
|
||||||
|
|
||||||
|
try {
|
||||||
// fallback method just in case youtube changes things; it should never run and tests will fail
|
// fallback method just in case youtube changes things; it should never run and tests will fail
|
||||||
// provides an url with "/user/NAME", that is inconsistent with stream and channel extractor
|
// provides an url with "/user/NAME", that is inconsistent with stream and channel extractor
|
||||||
return el.select("a[class*=\"yt-uix-tile-link\"]").first()
|
return el.select("a[class*=\"yt-uix-tile-link\"]").first()
|
||||||
.attr("abs:href");
|
.attr("abs:href");
|
||||||
|
} catch (Throwable e) {
|
||||||
|
throw new ParsingException("Could not get channel url", e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue