From 119843bfaca2036192e8e0a30dab6e63185c705b Mon Sep 17 00:00:00 2001 From: John Zhen Mo Date: Fri, 7 Sep 2018 11:34:14 -0700 Subject: [PATCH] -Fix signature extraction parse exception. --- .../services/youtube/extractors/YoutubeStreamExtractor.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/extractor/src/main/java/org/schabi/newpipe/extractor/services/youtube/extractors/YoutubeStreamExtractor.java b/extractor/src/main/java/org/schabi/newpipe/extractor/services/youtube/extractors/YoutubeStreamExtractor.java index a8c7c097d..f8d36c497 100644 --- a/extractor/src/main/java/org/schabi/newpipe/extractor/services/youtube/extractors/YoutubeStreamExtractor.java +++ b/extractor/src/main/java/org/schabi/newpipe/extractor/services/youtube/extractors/YoutubeStreamExtractor.java @@ -698,8 +698,10 @@ public class YoutubeStreamExtractor extends StreamExtractor { } String playerCode = downloader.download(playerUrl); - decryptionFuncName = - Parser.matchGroup("([\"\\'])signature\\1\\s*,\\s*([a-zA-Z0-9$]+)\\(", playerCode, 2); + decryptionFuncName = Parser.matchGroup( + // Look for a function with the first line containing pattern of: [var]=[var].split("") + "(\\w+)\\s*=\\s*function\\((\\w+)\\)\\{\\s*\\2=\\s*\\2\\.split\\(\"\"\\)\\s*;", + playerCode, 1); String functionPattern = "(" + decryptionFuncName.replace("$", "\\$")