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

    From Paul@3:633/10 to All on Thursday, January 29, 2026 21:06:02
    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

    --- PyGate Linux v1.5.6
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Lawrence D?Oliveiro@3:633/10 to All on Friday, January 30, 2026 04:09:02
    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>.

    --- PyGate Linux v1.5.6
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Stan Brown@3:633/10 to All on Friday, January 30, 2026 11:30:36
    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

    --- PyGate Linux v1.5.8
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From candycanearter07@3:633/10 to All on Friday, January 30, 2026 20:40:03
    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

    --- PyGate Linux v1.5.8
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Mr. Man-wai Chang@3:633/10 to All on Saturday, January 31, 2026 17:30:48
    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

    --- PyGate Linux v1.5.8
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Mr. Man-wai Chang@3:633/10 to All on Saturday, January 31, 2026 17:40:12
    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

    --- PyGate Linux v1.5.8
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From J. P. Gilliver@3:633/10 to All on Saturday, January 31, 2026 13:14:16
    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

    --- PyGate Linux v1.5.8
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Lawrence D?Oliveiro@3:633/10 to All on Saturday, January 31, 2026 20:55:02
    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.

    --- PyGate Linux v1.5.8
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From J. P. Gilliver@3:633/10 to All on Sunday, February 01, 2026 13:24:10
    On 2026/1/31 20:55:2, Lawrence D?Oliveiro 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.

    --- PyGate Linux v1.5.10
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From J. P. Gilliver@3:633/10 to All on Sunday, February 01, 2026 13:46:03
    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-origin?
    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

    --- PyGate Linux v1.5.10
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Herbert Kleebauer@3:633/10 to All on Sunday, February 01, 2026 16:23:27
    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 ?proof-of-origin?
    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.





    --- PyGate Linux v1.5.10
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Lawrence D?Oliveiro@3:633/10 to All on Sunday, February 01, 2026 21:29:03
    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 Forbidden? errors a week
    or two back, but that went away after a newer update.

    --- PyGate Linux v1.5.10
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Lawrence D?Oliveiro@3:633/10 to All on Sunday, February 01, 2026 23:52:14
    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 ?Android
    player? or ?IOS player?. 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 didn?t 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 ...

    --- PyGate Linux v1.5.10
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)