Fix parsing new ytInitialData

This commit is contained in:
wb9688 2020-10-16 20:27:40 +02:00
parent 1a9bc8caf1
commit be9a6f931c
1 changed files with 7 additions and 2 deletions

View File

@ -197,8 +197,13 @@ public class YoutubeParsingHelper {
public static JsonObject getInitialData(String html) throws ParsingException { public static JsonObject getInitialData(String html) throws ParsingException {
try { try {
String initialData = Parser.matchGroup1("window\\[\"ytInitialData\"\\]\\s*=\\s*(\\{.*?\\});", html); try {
return JsonParser.object().from(initialData); final String initialData = Parser.matchGroup1("window\\[\"ytInitialData\"\\]\\s*=\\s*(\\{.*?\\});", html);
return JsonParser.object().from(initialData);
} catch (Parser.RegexException e) {
final String initialData = Parser.matchGroup1("var\\s*ytInitialData\\s*=\\s*(\\{.*?\\});", html);
return JsonParser.object().from(initialData);
}
} catch (JsonParserException | Parser.RegexException e) { } catch (JsonParserException | Parser.RegexException e) {
throw new ParsingException("Could not get ytInitialData", e); throw new ParsingException("Could not get ytInitialData", e);
} }