• unable to download video data: HTTP Error 403: Forbidden

    From Simon@invalid@invalid.invalid to alt.comp.os.windows-10, alt.comp.software.firefox on Fri Jan 30 01:32:26 2026
    From Newsgroup: alt.comp.software.firefox


    This is interesting!

    <https://grok.com/c/42ffd6cf-fa70-4ff5-9421-bbe3d76bad38?rid=b53b92ce-82ce-43d4-81e1-1abc771ff324>

    I'm having this problem despite getting latest yt-dlp. David Ross's
    program <3dyd64_1.25> works yet it uses old yt-dlp.


    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Nobody@jock@soccer.com to alt.comp.software.firefox on Thu Jan 29 17:51:23 2026
    From Newsgroup: alt.comp.software.firefox

    On Fri, 30 Jan 2026 01:32:26 +0000, Simon <invalid@invalid.invalid>
    wrote:

    This is interesting!

    <https://grok.com/c/42ffd6cf-fa70-4ff5-9421-bbe3d76bad38?rid=b53b92ce-82ce-43d4-81e1-1abc771ff324>

    I'm having this problem despite getting latest yt-dlp. David Ross's
    program <3dyd64_1.25> works yet it uses old yt-dlp.

    Um, you have the gall to post such a query (supposedly grumbling about
    access to <grok>) via a.c.s.firefox?
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Lawrence =?iso-8859-13?q?D=FFOliveiro?=@ldo@nz.invalid to alt.comp.os.windows-10,alt.comp.software.firefox on Fri Jan 30 04:09:02 2026
    From Newsgroup: alt.comp.software.firefox

    On Fri, 30 Jan 2026 01:32:26 +0000, Simon wrote:

    I'm having this problem despite getting latest yt-dlp.

    You may need a JavaScript engine installed for YouTube downloads to
    work now. YouTube is getting more draconian in its rCLproof-of-originrCY
    checks <https://github.com/yt-dlp/yt-dlp-wiki/blob/master/EJS.md>.
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Maria Sophia@mariasophia@comprehension.com to alt.comp.os.windows-10,alt.comp.software.firefox on Fri Jan 30 02:27:46 2026
    From Newsgroup: alt.comp.software.firefox

    Lawrence D Oliveiro wrote:
    On Fri, 30 Jan 2026 01:32:26 +0000, Simon wrote:

    I'm having this problem despite getting latest yt-dlp.

    You may need a JavaScript engine installed for YouTube downloads to
    work now. YouTube is getting more draconian in its |proof-of-origini
    checks <https://github.com/yt-dlp/yt-dlp-wiki/blob/master/EJS.md>.

    This is a known issue if its what we covered last week in your thread.
    In that thread, I tested a solution for you & described it in gory detail.
    Newsgroups: alt.comp.os.windows-10,alt.comp.software.firefox
    Subject: You Tube Videos
    Date: Sun, 18 Jan 2026 12:06:26 -0500
    Message-ID: <10kj3ui$1kgh$1@nnrp.usenet.blueworldhosting.com>

    You haven't responded to that appreciable effort on your behalf.
    I spent, oh, maybe three or four hours testing solutions for you.

    But we didn't hear from you.
    Carlos tested the solutions also for you. He invested a lot of time too.

    No sense digging deeper until you respond to what we already gave you.

    If you think you are having a DIFFERENT issue, then you need to tell us
    what you tried from the solution I had provided as it worked for me.

    1. First, I got HTTP Error 403
    2. Then I made the suggested changes
    3. Then the HTTP Error 403 disappeared

    Note that I ran into the same whack-a-mole problem on Android NewPipe.
    The latest NewPipe solved it too. <https://newpipe.net/>

    Specifically version 0.28.2 <https://newpipe.net/#download>
    <https://archive.newpipe.net/fdroid/repo/NewPipe_v0.28.2.apk>

    As far as I can tell, Google is playing whack-a-mole as Paul described.
    The solution, on Windows, is to run the fixes Carlos & I tested for you.
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From candycanearter07@candycanearter07@candycanearter07.nomail.afraid to alt.comp.os.windows-10,alt.comp.software.firefox on Fri Jan 30 20:40:03 2026
    From Newsgroup: alt.comp.software.firefox

    Stan Brown <someone@example.com> wrote at 19:30 this Friday (GMT):
    On Fri, 30 Jan 2026 04:09:02 -0000 (UTC), Lawrence D?Oliveiro wrote:
    On Fri, 30 Jan 2026 01:32:26 +0000, Simon wrote:

    I'm having this problem despite getting latest yt-dlp.

    You may need a JavaScript engine installed for YouTube downloads to
    work now. YouTube is getting more draconian in its ?proof-of-origin?
    checks <https://github.com/yt-dlp/yt-dlp-wiki/blob/master/EJS.md>.


    I typed
    yt-dlp -U
    on my command line this morning, after yt-dlp failed to retrieve a
    video. After updating, yt-dlp downloaded that same video just fine.


    Yeah, some update on the 28th completely broke yt-dlp for a bit, seems
    they blocked the android-sdkless player?
    --
    user <candycane> is generated from /dev/urandom
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Mr. Man-wai Chang@toylet.toylet@gmail.com to alt.comp.os.windows-10,alt.comp.software.firefox,alt.comp.os.windows-11,alt.comp.freeware on Sat Jan 31 17:30:48 2026
    From Newsgroup: alt.comp.software.firefox

    On 1/31/2026 3:30 AM, Stan Brown wrote:

    I typed
    yt-dlp -U
    on my command line this morning, after yt-dlp failed to retrieve a
    video. After updating, yt-dlp downloaded that same video just fine.


    Check out the thread "You Tube Videos" in alt.comp.freeware or alt.comp.os.windows-10 !! :)
    --
    @~@ Simplicity is Beauty! Remain silent! Drink, Blink, Stretch!
    / v \ May the Force and farces be with you! Live long and prosper!!
    /( _ )\ https://sites.google.com/site/changmw/
    ^ ^ https://github.com/changmw/changmw
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Mr. Man-wai Chang@toylet.toylet@gmail.com to alt.comp.os.windows-10,alt.comp.software.firefox,alt.comp.os.windows-11,alt.comp.freeware on Sat Jan 31 17:40:12 2026
    From Newsgroup: alt.comp.software.firefox

    On 1/31/2026 5:30 PM, Mr. Man-wai Chang wrote:

    Check out the thread "You Tube Videos" in alt.comp.freeware or alt.comp.os.windows-10 !! :)
    Sorry, not newsgroup "alt.comp.os.windows-10", but "alt.comp.software.firefox"!
    --
    @~@ Simplicity is Beauty! Remain silent! Drink, Blink, Stretch!
    / v \ May the Force and farces be with you! Live long and prosper!!
    /( _ )\ https://sites.google.com/site/changmw/
    ^ ^ https://github.com/changmw/changmw
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From J. P. Gilliver@G6JPG@255soft.uk to alt.comp.os.windows-10,alt.comp.software.firefox on Sat Jan 31 13:14:16 2026
    From Newsgroup: alt.comp.software.firefox

    On 2026/1/30 20:40:3, candycanearter07 wrote:
    Stan Brown <someone@example.com> wrote at 19:30 this Friday (GMT):

    []

    I typed
    yt-dlp -U
    on my command line this morning, after yt-dlp failed to retrieve a
    video. After updating, yt-dlp downloaded that same video just fine.


    Yeah, some update on the 28th completely broke yt-dlp for a bit, seems
    they blocked the android-sdkless player?

    Yes, I found the -29 update helped.

    Why does yt-dlp _need_ a player? I'm not playing the video!
    --
    J. P. Gilliver. UMRA: 1960/<1985 MB++G()ALIS-Ch++(p)Ar++T+H+Sh0!:`)DNAf

    The motto of the Royal Society is: 'Take nobody's word for it'.
    Scepticism has value. - Brian Cox, RT 2015/3/14-20
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Maria Sophia@mariasophia@comprehension.com to alt.comp.os.windows-10,alt.comp.software.firefox,alt.comp.os.windows-11,alt.comp.freeware on Sat Jan 31 12:34:59 2026
    From Newsgroup: alt.comp.software.firefox

    Mr. Man-wai Chang wrote:
    Check out the thread "You Tube Videos" in alt.comp.freeware or
    alt.comp.os.windows-10 !! :)
    Sorry, not newsgroup "alt.comp.os.windows-10", but "alt.comp.software.firefox"!

    What's confusing to me is the two threads appear to be from the same nym.
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Lawrence =?iso-8859-13?q?D=FFOliveiro?=@ldo@nz.invalid to alt.comp.os.windows-10,alt.comp.software.firefox on Sat Jan 31 20:55:02 2026
    From Newsgroup: alt.comp.software.firefox

    On Sat, 31 Jan 2026 13:14:16 +0000, J. P. Gilliver wrote:

    Why does yt-dlp _need_ a player?

    It pretends to be a player, because YouTube only wants to serve videos
    to players.
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Simon@invalid@invalid.invalid to alt.comp.os.windows-10, alt.comp.software.firefox on Sat Jan 31 22:24:07 2026
    From Newsgroup: alt.comp.software.firefox

    On 30/01/2026 04:09, Lawrence DrCOOliveiro wrote:
    On Fri, 30 Jan 2026 01:32:26 +0000, Simon wrote:

    I'm having this problem despite getting latest yt-dlp.

    You may need a JavaScript engine installed for YouTube downloads to
    work now. YouTube is getting more draconian in its rCLproof-of-originrCY checks <https://github.com/yt-dlp/yt-dlp-wiki/blob/master/EJS.md>.


    I downloaded deno.exe and put it in the same folder as yt-dlp.exe, and
    now it works. It has also removed the warnings I used to get, but I
    ignored them until now. Hopefully they are gone forever.







    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From J. P. Gilliver@G6JPG@255soft.uk to alt.comp.os.windows-10,alt.comp.software.firefox on Sun Feb 1 13:24:10 2026
    From Newsgroup: alt.comp.software.firefox

    On 2026/1/31 20:55:2, Lawrence DrCOOliveiro wrote:
    On Sat, 31 Jan 2026 13:14:16 +0000, J. P. Gilliver wrote:

    Why does yt-dlp _need_ a player?

    It pretends to be a player, because YouTube only wants to serve videos
    to players.

    I see. Though it seems odd that it says for example

    Downloading android vr player API JSON
    Downloading ios downgraded player API JSON

    - (a) why _two_ players, (b) why both for OSs other than the one I'm on (Windows 10), (c) can't it pretend to be a player - offer the
    appropriate prompts/responses/whatever - without actually downloading
    players (which presumably an existing player wouldn't do)?
    --
    J. P. Gilliver. UMRA: 1960/<1985 MB++G()ALIS-Ch++(p)Ar++T+H+Sh0!:`)DNAf

    Personally, I don't like the Senate idea, I don't like the idea of
    having to elect another bunch of overpaid incompetents. I don't like
    the idea of having wholesale appointments by the PM of the day for
    domination of the second chamber. I like anachronism. I like the idea
    of a bunch of unelected congenital idiots getting in the way of a bunch
    of conmen. - Charles F. Hankel, 1998-3-19.
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From J. P. Gilliver@G6JPG@255soft.uk to alt.comp.os.windows-10,alt.comp.software.firefox on Sun Feb 1 13:46:03 2026
    From Newsgroup: alt.comp.software.firefox

    On 2026/1/31 22:24:7, Simon wrote:
    On 30/01/2026 04:09, Lawrence DrCOOliveiro wrote:
    On Fri, 30 Jan 2026 01:32:26 +0000, Simon wrote:

    I'm having this problem despite getting latest yt-dlp.

    You may need a JavaScript engine installed for YouTube downloads to
    work now. YouTube is getting more draconian in its rCLproof-of-originrCY
    checks <https://github.com/yt-dlp/yt-dlp-wiki/blob/master/EJS.md>.


    I downloaded deno.exe and put it in the same folder as yt-dlp.exe, and
    now it works. It has also removed the warnings I used to get, but I
    ignored them until now. Hopefully they are gone forever.


    I haven't had such problems at the moment, but sounded like something it
    might be useful to have, and I checked with Everything and I don't have
    a file called deno.exe anywhere ... to save others some digging, it's <https://github.com/denoland/deno/releases/download/v2.6.7/deno-x86_64-pc-windows-msvc.zip>
    (that's obviously a .zip file, but deno.exe is the only thing in it).
    [I'm assuming as this is mainly going to a Windows 'group that that's
    the appropriate one; otherwise pick from <https://github.com/denoland/deno/releases/tag/v2.6.7>.]





    --
    J. P. Gilliver. UMRA: 1960/<1985 MB++G()ALIS-Ch++(p)Ar++T+H+Sh0!:`)DNAf

    # 10^-12 boos = 1 picoboo # 2*10^3 mockingbirds = 2 kilo mockingbird
    # 10^21 piccolos = 1 gigolo # 10^12 microphones = 1 megaphone
    # 10**9 questions = 1 gigawhat
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Maria Sophia@mariasophia@comprehension.com to alt.comp.os.windows-10,alt.comp.software.firefox on Sun Feb 1 09:52:58 2026
    From Newsgroup: alt.comp.software.firefox

    J. P. Gilliver wrote:
    On 2026/1/31 22:24:7, Simon wrote:
    On 30/01/2026 04:09, Lawrence D Oliveiro wrote:
    On Fri, 30 Jan 2026 01:32:26 +0000, Simon wrote:

    I'm having this problem despite getting latest yt-dlp.

    You may need a JavaScript engine installed for YouTube downloads to
    work now. YouTube is getting more draconian in its |proof-of-origini
    checks <https://github.com/yt-dlp/yt-dlp-wiki/blob/master/EJS.md>.


    I downloaded deno.exe and put it in the same folder as yt-dlp.exe, and
    now it works. It has also removed the warnings I used to get, but I
    ignored them until now. Hopefully they are gone forever.


    I haven't had such problems at the moment, but sounded like something it might be useful to have, and I checked with Everything and I don't have
    a file called deno.exe anywhere ... to save others some digging, it's <https://github.com/denoland/deno/releases/download/v2.6.7/deno-x86_64-pc-windows-msvc.zip>
    (that's obviously a .zip file, but deno.exe is the only thing in it).
    [I'm assuming as this is mainly going to a Windows 'group that that's
    the appropriate one; otherwise pick from <https://github.com/denoland/deno/releases/tag/v2.6.7>.]

    I'm glad Lawrence D'Oliveiro and others (like Carlos) were successful with
    deno and node (I was successful myself with node when I tested it for
    Simon), since, AFAIK, none of this player-faking stuff was needed prior.

    Since I take delight in learning and then dissemination of what I've
    learned so that I can help others who have helped me, here's an actionable summary (with the commands needed to fix the problem of the JS engine).

    1. What changed on YouTube
    A. YouTube added new JavaScript based proof-of-origin checks.
    B. These checks run real browser-like JavaScript.
    C. Python alone cannot run that JavaScript.
    D. yt-dlp must now call an external JS engine to pass those checks.

    2. What changed in yt-dlp
    A. yt-dlp added support for external JS engines.
    B. Without one, YouTube extraction fails or gives warnings.
    C. This requirement became important in late 2025.

    3. What Deno is
    A. Deno is a standalone JavaScript and TypeScript runtime.
    B. It is a single EXE on Windows, no installer needed.
    C. yt-dlp can auto-detect deno.exe if placed next to yt-dlp.exe.
    D. This makes Deno the easiest choice for Windows users.
    E. To get Deno for Windows.
    C:\> curl -LO https://github.com/denoland/deno/releases/latest/download/deno-x86_64-pc-windows-msvc.zip
    To get J.P. Gilliver's specific version:
    C:\> curl -LO https://github.com/denoland/deno/releases/download/v2.6.7/deno-x86_64-pc-windows-msvc.zip

    4. What Node.js is
    A. Node.js is an older, widely used JavaScript runtime.
    B. It works with yt-dlp, but it needs a full installation.
    C. It is not a single portable EXE on Windows.
    D. yt-dlp supports Node, but Deno is simpler for most users.
    E. To get and install the version that worked for me:
    C:\> curl -O https://nodejs.org/dist/v22.11.0/node-v22.11.0-x64.msi
    C:\> start node-v22.11.0-x64.msi
    C:\> yt-dlp --js-runtime node https://www.youtube.com/watch?v=BY82T7Q8hiw

    5. Are Deno and Node the same
    A. No. And yes. They both run JavaScript outside a browser.
    B. But they are separate projects with different designs.
    C. Luckily, yt-dlp does not care which one you use.

    6. Why you never needed this before
    A. For years, yt-dlp could decode YouTube signatures in Python.
    B. YouTube now uses JavaScript challenges Python cannot emulate.
    C. This forced yt-dlp to rely on an external JS engine.

    7. What does ffmpeg have to do with this process
    A. ffmpeg is only used for muxing and transcoding.
    B. The JS engine is needed only for YouTube extraction logic.

    8. What are the relevant JS engines that yt-dlp can use
    Below are the JavaScript engines that are realistically usable
    with yt-dlp.

    a. Deno
    A. Single portable EXE.
    B. Easiest option for Windows.
    C. Auto detected by yt-dlp.

    b. Node.js
    A. Requires a full installer.
    B. Widely used and reliable.
    C. Auto detected by yt-dlp.

    c. Bun
    A. Newer JS runtime.
    B. Has a Windows build.
    C. Auto detected if on PATH.

    d. QuickJS
    A. Small standalone JS engine.
    B. Windows builds exist but not common.
    C. Auto detected if qjs is on PATH.

    Summary:
    i. Deno is simplest.
    ii. Node is most common.
    iii. Bun works but is newer.
    iv. QuickJS works if installed manually.
    --
    Every Usenet post should strive to add palpable additional value
    so that we can all delight in dissemination of useful knowledge.
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Herbert Kleebauer@klee@unibwm.de to alt.comp.os.windows-10,alt.comp.software.firefox on Sun Feb 1 16:23:27 2026
    From Newsgroup: alt.comp.software.firefox

    On 2/1/2026 2:46 PM, J. P. Gilliver wrote:

    You may need a JavaScript engine installed for YouTube downloads to
    work now. YouTube is getting more draconian in its rCLproof-of-originrCY >>> checks <https://github.com/yt-dlp/yt-dlp-wiki/blob/master/EJS.md>.

    I haven't had such problems at the moment, but sounded like something it might be useful to have, and I checked with Everything and I don't have
    a file called deno.exe anywhere ... to save others some digging, it's <https://github.com/denoland/deno/releases/download/v2.6.7/deno-x86_64-pc-windows-msvc.zip>

    And if YouTube makes the next step and again the download
    doesn't work, there is always an other way: use the Windows
    Sniping Tool (press the PRINT key to start it) to record the
    video displayed on the screen. It's not the same as a download
    but a usable work around until the download works again.




    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Maria Sophia@mariasophia@comprehension.com to alt.comp.os.windows-10,alt.comp.software.firefox on Sun Feb 1 17:30:32 2026
    From Newsgroup: alt.comp.software.firefox

    Lawrence D Oliveiro wrote:
    On Sun, 1 Feb 2026 09:52:58 -0500, Maria Sophia wrote:

    I'm glad Lawrence D'Oliveiro and others (like Carlos) were
    successful with deno and node ...

    Actually, I m not sure my yt-dlp installation is using any actual
    JavaScript engine (yet). I was getting |403 Forbiddeni errors a week
    or two back, but that went away after a newer update.

    Months ago we covered the YouTube login challenge which was similar in that every person had a different situation when it came to reproducing results.

    This is the classic YMMV case since results depend on YouTube algorithms.

    1. These are possible reasons why yt-dlp might work without a JS engine
    A. YouTube does not apply its JS proof-of-origin checks to all users.
    Some regions, IP ranges or accounts do not receive the challenge.
    B. yt-dlp can still use older extraction paths when the JS challenge
    is not triggered. These include cached signatures and older logic.
    C. A recent yt-dlp update may have added new extraction patterns that
    temporarily bypass the need for a JS engine.
    D. YouTube sometimes rolls back new anti-bot code when it causes
    problems. If that happened in your region, extraction may work
    again without JS.
    E. Not all videos require JS-based signature checks. Older videos or
    videos on certain CDNs may still work with pure Python logic.

    2. What this means
    A. yt-dlp can appear to work normally even when no JS engine is
    installed.
    B. This does not mean the new JS requirement is gone. It only means
    our requests have not triggered the new challenge recently.
    C. The yt-dlp developers have stated that a JS runtime will become
    necessary for reliable long-term YouTube extraction.

    3. Summary
    A. Your system has not hit the new challenge again yet.
    B. Because the requirement is real and will return.
    C. Installing a JS engine such as deno.exe remains the long-term fix.
    --
    Every Usenet post should strive to add palpable additional value
    so that we can all delight in dissemination of useful knowledge.
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Maria Sophia@mariasophia@comprehension.com to alt.comp.os.windows-10,alt.comp.software.firefox on Sun Feb 1 17:44:30 2026
    From Newsgroup: alt.comp.software.firefox

    Maria Sophia wrote:
    A. Your system has not hit the new challenge again yet.
    B. Because the requirement is real and will return.
    C. Installing a JS engine such as deno.exe remains the long-term fix.

    In another thread I wrote this, which I post to keep it all together for
    the records so that folks years from now can still benefit from our
    efforts.

    Here is s'more information about the new "proof-of-origin" checks which
    yt-dlp is needing the JS engines such as those listed above to download.

    1. What a proof-of-origin check is
    A. It is a server-side test that tries to confirm that a request really
    came from a real web browser, not from a script or a downloader.
    B. YouTube uses it to decide whether to serve a video stream or to
    block the request with errors such as 403 Forbidden.

    2. How the check works
    A. YouTube sends JavaScript code that must be executed exactly the way
    a browser would run it.
    B. The code computes tokens, signatures or cookies that prove the
    request originated from a browser-like environment.
    C. If the JavaScript is not executed correctly, the server refuses to
    provide the video data.

    3. Why yt-dlp cannot do this alone
    A. yt-dlp is written in Python, not JavaScript.
    B. Python cannot run the browser-style JavaScript that YouTube now
    requires.
    C. yt-dlp must therefore call an external JS engine to run the code
    and produce the correct proof-of-origin values.

    4. Why this is new
    A. For many years YouTube used simpler signature systems that yt-dlp
    could decode in Python.
    B. YouTube now uses more complex JavaScript challenges that Python
    cannot emulate.
    C. This change began rolling out in late 2025 and continues to expand.

    5. What the check accomplishes
    A. It slows down automated scraping.
    B. It forces tools like yt-dlp to behave more like real browsers.
    C. It lets YouTube rotate or update the challenge without warning.

    6. Summary
    A. A proof-of-origin check is YouTube asking the client to run real
    JavaScript to prove it is a browser.
    B. yt-dlp must use Deno, Node, Bun or QuickJS to run that JavaScript.
    C. Without a JS engine, the proof cannot be generated so extraction
    fails.

    This is, I believe, the fundamental cause of the "403 Not Found" errors.
    This begs the question of what a JS engine is, in terms of yt-dlp needs.

    1. What a JS engine is
    A. It is a program that reads and executes JavaScript code.
    B. Web browsers contain JS engines, for example Chrome uses V8 and
    Firefox uses SpiderMonkey.
    C. A standalone JS engine runs JavaScript outside a browser, which is
    what yt-dlp needs for YouTube's new challenges.

    2. What a JS engine does
    A. It parses JavaScript text into instructions the computer can run.
    B. It executes that code the same way a browser would.
    C. It produces values, tokens or signatures that the server expects.

    3. Why yt-dlp needs one
    A. YouTube now sends JavaScript that must be executed exactly.
    B. Python cannot run that JavaScript.
    C. yt-dlp calls an external JS engine to run the code and return the
    proof-of-origin values.

    4. Examples of JS engines
    A. Deno, a single portable EXE.
    B. Node.js, a full installation.
    C. Bun, a newer runtime.
    D. QuickJS, a small standalone engine.

    5. Summary
    A. A JS engine is simply a program that runs JavaScript.
    B. yt-dlp uses it to solve YouTube's new browser-like challenges.

    That then begs the question of why doesn't everyone see the same errors.
    This is the classic YMMV case since results depend on YouTube algorithms.

    1. These are possible reasons why yt-dlp might work without a JS engine
    A. YouTube does not apply its JS proof-of-origin checks to all users.
    Some regions, IP ranges or accounts do not receive the challenge.
    B. yt-dlp can still use older extraction paths when the JS challenge
    is not triggered. These include cached signatures and older logic.
    C. A recent yt-dlp update may have added new extraction patterns that
    temporarily bypass the need for a JS engine.
    D. YouTube sometimes rolls back new anti-bot code when it causes
    problems. If that happened in your region, extraction may work
    again without JS.
    E. Not all videos require JS-based signature checks. Older videos or
    videos on certain CDNs may still work with pure Python logic.

    2. What this means
    A. yt-dlp can appear to work normally even when no JS engine is
    installed.
    B. This does not mean the new JS requirement is gone. It only means
    our requests have not triggered the new challenge recently.
    C. The yt-dlp developers have stated that a JS runtime will become
    necessary for reliable long-term YouTube extraction.

    3. Summary
    A. Your system has not hit the new challenge again yet.
    B. Because the requirement is real and will return.
    C. Installing a JS engine such as deno.exe remains the long-term fix.
    --
    Had I known how it works, I would have written up a tutorial instead since
    I'm a rare breed of person who delights in edifying everyone around me.
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Lawrence =?iso-8859-13?q?D=FFOliveiro?=@ldo@nz.invalid to alt.comp.os.windows-10,alt.comp.software.firefox on Sun Feb 1 23:52:14 2026
    From Newsgroup: alt.comp.software.firefox

    On Sun, 1 Feb 2026 17:44:30 -0500, Maria Sophia wrote:

    1. What a proof-of-origin check is
    A. It is a server-side test that tries to confirm that a request
    really came from a real web browser, not from a script or a
    downloader.

    Also you have officially-sanctioned mobile apps that are allowed to
    play YouTube videos, that go through the same sort of check.

    Users of youtube-dl/yt-dlp will have seen messages about rCLAndroid
    playerrCY or rCLIOS playerrCY. I think YouTube may be offering different quality options to different clients, so the downloader offers the
    option to masquerade as any of them, to try to maximize the choices
    available to the user.

    C. yt-dlp must therefore call an external JS engine to run the
    code and produce the correct proof-of-origin values.

    In previous times, it would use a library like PhantomJS, which
    actually behaves like a full-function web browser (as far as the
    server side is concerned), but has no GUI that a human user can see,
    and is totally controlled from a client program.

    Nowadays this has been phased out in favour of the JavaScript-engine
    approach. Not sure why: I suspect the PhantomJS-style approach was
    complex to maintain and keep up to date.

    That then begs the question of why doesn't everyone see the same errors.

    Or even on different streams of the same video. There was one I tried
    to download recently where I think the video came down OK, but the
    audio hit the dreaded 403 Forbidden error (or was it the other way
    round? I didnrCOt bother to check before deleting the .part file). This happened consistently on multiple attempts before I gave up.

    That one worked when I tried again about a week later, after an update
    to yt-dlp.

    2. What this means
    A. yt-dlp can appear to work normally even when no JS engine is
    installed.
    B. This does not mean the new JS requirement is gone. It only
    means our requests have not triggered the new challenge
    recently.
    C. The yt-dlp developers have stated that a JS runtime will
    become necessary for reliable long-term YouTube extraction.

    Yeah. And so the whack-a-mole game continues ...
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From candycanearter07@candycanearter07@candycanearter07.nomail.afraid to alt.comp.os.windows-10,alt.comp.software.firefox on Mon Feb 2 15:00:03 2026
    From Newsgroup: alt.comp.software.firefox

    Lawrence DrCOOliveiro <ldo@nz.invalid> wrote at 20:55 this Saturday (GMT):
    On Sat, 31 Jan 2026 13:14:16 +0000, J. P. Gilliver wrote:

    Why does yt-dlp _need_ a player?

    It pretends to be a player, because YouTube only wants to serve videos
    to players.


    Yeah, thats why it also requires a JS engine.
    --
    user <candycane> is generated from /dev/urandom
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Paul@nospam@needed.invalid to alt.comp.os.windows-10,alt.comp.software.firefox on Thu Jan 29 21:06:02 2026
    From Newsgroup: alt.comp.software.firefox

    On Thu, 1/29/2026 8:32 PM, Simon wrote:

    This is interesting!

    <https://grok.com/c/42ffd6cf-fa70-4ff5-9421-bbe3d76bad38?rid=b53b92ce-82ce-43d4-81e1-1abc771ff324>

    I'm having this problem despite getting latest yt-dlp. David Ross's
    program <3dyd64_1.25> works yet it uses old yt-dlp.



    There are a variety of bogus issues that do this.

    See if yt-dlp spoofs a UserAgent. On the one hand, it has to
    do web centric things, on the other, it has to "pretend to be Firefox"
    or presumably pretending to be Chrome would be a better "passport".

    It can't pretend to be SeaMonkey, as that causes lots of adverse reactions
    on websites packing Google Payware.

    The web has been wired by the Bomb Squad, if you hadn't noticed.
    (CloudFlare Smurf Behavior.) Such a returned result hardly makes
    me blink (or twitch) any more. You just have to keep shoveling and trying stuff.

    Take this result. I go to watch a 60 Minutes rebroadcast on Youtube.
    Google returns "this is not for your country" and because I live
    in a swamp with alligators, normally I would just "stop and go away".
    Yet, if I track down the video to the CBS website, I am shown
    the video with no trouble at all. Being in Canada has no affect
    on my swamp or my pitiful alligators. It was a video about Boston Dynamics
    and the latest Atlas robot.

    You'll notice I didn't stop. I didn't blink. The reaction triggered
    my "well, we'll just have to follow the breadcrumbs back to the source then". And that yielded a result.

    As for your grok.com link, I wouldn't touch that with a barge pole.
    Reason ? Hardly any "summary" pages people produce from an AI session,
    work for others. The batting average on https://---.ai is poor.
    There's always some blockage or other. If there
    really is something interesting in there, just copy out the
    salient text and post it here.

    Paul
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Stan Brown@someone@example.com to alt.comp.os.windows-10,alt.comp.software.firefox on Fri Jan 30 11:30:36 2026
    From Newsgroup: alt.comp.software.firefox

    On Fri, 30 Jan 2026 04:09:02 -0000 (UTC), Lawrence D?Oliveiro wrote:
    On Fri, 30 Jan 2026 01:32:26 +0000, Simon wrote:

    I'm having this problem despite getting latest yt-dlp.

    You may need a JavaScript engine installed for YouTube downloads to
    work now. YouTube is getting more draconian in its ?proof-of-origin?
    checks <https://github.com/yt-dlp/yt-dlp-wiki/blob/master/EJS.md>.


    I typed
    yt-dlp -U
    on my command line this morning, after yt-dlp failed to retrieve a
    video. After updating, yt-dlp downloaded that same video just fine.
    --
    "The power of accurate observation is frequently called cynicism by
    those who don't have it." --George Bernard Shaw
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Lawrence =?iso-8859-13?q?D=FFOliveiro?=@ldo@nz.invalid to alt.comp.os.windows-10,alt.comp.software.firefox on Sun Feb 1 21:29:03 2026
    From Newsgroup: alt.comp.software.firefox

    On Sun, 1 Feb 2026 09:52:58 -0500, Maria Sophia wrote:

    I'm glad Lawrence D'Oliveiro and others (like Carlos) were
    successful with deno and node ...

    Actually, IrCOm not sure my yt-dlp installation is using any actual
    JavaScript engine (yet). I was getting rCL403 ForbiddenrCY errors a week
    or two back, but that went away after a newer update.
    --- Synchronet 3.21b-Linux NewsLink 1.2