CodeName의 잡다한 블로그

오류

evalmachine.<anonymous>:11
"mfZru","cfYAzm",1897615910,414154674,"IluoVc5",null,1,"XsmT",-659785013,577478260,-419211961,1087899650,/,,[/,913,/](,)};Wka(ncode);
                                                                                                         ^

SyntaxError: Invalid regular expression: missing /

오늘 오후쯤부터 나타난 오류입니다.

저를 포함한 대부분 ytdl-core를 사용하는 곳에서 나타나는 오류입니다.

깃헙에 이슈를 올릴려고 했으나 누가 먼져 올려놨더라고요.

https://github.com/fent/node-ytdl-core/issues/1110

 

Invalid regular expression: missing / · Issue #1110 · fent/node-ytdl-core

Since 1 or 2 hours, all videos passed on ytdl-core return this "Invalid regular expression" error Stack trace: evalmachine.<anonymous>:11 "mfZru","cfYAzm",189761...

github.com

 

해결

이슈를 좀 살펴보니 일부 해결방법이 여러가지가 있어서 그중 임시로 해결한 방법이 버전 다운그레이드였습니다.

ytdl-core 버전은 4.10.0으로 내리면 오류가 해결이 됩니다.

npn install ytdl-core@4.10.0

이 해결방법 뿐만 아닌 다른 해결방법도 있습니다.

 

'node-ytdl-core/lib/sig.js' 또는 'ytdl-core/lib/sig.js'에서

if (ndx >= 0) { 
   const subBody = body.slice(ndx + functionStart.length); 
   const functionBody = `var ${functionStart}${utils.cutAfterJSON(subBody)};${functionName}(ncode);`; 
   functions.push(functionBody); 
 }

코드를

if (ndx >= 0) {
    const end = body.indexOf('.join("")};', ndx);
    const subBody = body.slice(ndx, end);
    const functionBody = `${subBody}.join("")};${functionName}(ncode);`;
    functions.push(functionBody);
}

로 수정해서 고치는 방법입니다.

2번째 방법은 주석구문으로 인식되지 않도록 오류나는 부분에 " "를 씌어서 해결해주는 방법입니다.

(이 방법은 직접 해보진 않았습니다.)

 

다만 다른 오류가 여러군데에서 발생하기에 임시방편에 불과합니다

 

빠른 시일내에 ytdl-core 오류가 해결되길 빕니다.

전 이걸 찾는라 시간을 너무 허비했....

profile

CodeName의 잡다한 블로그

@코네 (CodeName)

소프트웨어 개발, 컴퓨터 조립 등을 좋아합니다. 최근에는 애니메이션에도 입덕했습니다!