In your config.yaml you specify which proxy to use ie:
change this
to thisCode:# Set proxy to be used when invoking --proxy # See README and help documentation on how to set up proxies proxy: # basic, hola or windscribe
Code:# Set proxy to be used when invoking --proxy # See README and help documentation on how to set up proxies proxy: windscribe
Support our site by donate $5 directly to us Thanks!!!
Try StreamFab Downloader and download streaming video from Netflix, Amazon!
Try StreamFab Downloader and download streaming video from Netflix, Amazon!
+ Reply to Thread
Results 811 to 840 of 1599
-
-
There'll be three lines in config.yaml that you need to edit.
Code:proxy: windscribe windscribe: username: yourusername password: yourpassword
So:
Code:... normal command line here ... --proxy US
Code:Canada East/Montreal | Canada East/Toronto | Canada West/Vancouver | France/Paris | Germany/Frankfurt | Hong Kong/Hong Kong | Netherlands/Amsterdam | Norway/Oslo | Romania/Bucharest Switzerland/Zurich | Turkey/Istanbul | US Central/Atlanta | US Central/Dallas | US East/Chicago | US East/Miami | US East/New York | US East/Washington DC | US West/Los Angeles US West/Seattle | United Kingdom/London
Last edited by SB47x; 21st Jan 2024 at 20:14.
-
I did some experimenting in the config.
# See README and help documentation on how to set up proxies
proxy: windscribe
I do have my exact username and password were I am suppose to place them in the config.
Code:Microsoft Windows [Version 10.0.22000.2176] (c) Microsoft Corporation. All rights reserved. C:\freevine-1.1.4>freevine.py get -sv res=480 -e S04E21 https://therokuchannel.roku.com/details/537a8dca9abb50eaa76f97f3ea147385/in-the-heat-of-the-night --proxy US ❯_freevine v1.1.4 20:20:08.815 ←[4m←[32mINFO←[0m : ←[1mThe Roku Channel←[0m 20:20:08.862 ←[4m←[32mINFO←[0m : + Adding Windscribe proxy location: US Traceback (most recent call last): File "C:\freevine-1.1.4\freevine.py", line 15, in <module> cli() File "C:\Users\sheld\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 1157, in __call__ return self.main(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\sheld\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 1078, in main rv = self.invoke(ctx) ^^^^^^^^^^^^^^^^ File "C:\Users\sheld\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 1688, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\sheld\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 1434, in invoke return ctx.invoke(self.callback, **ctx.params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\sheld\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 783, in invoke return __callback(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\freevine-1.1.4\utils\commands.py", line 90, in get Service(config, **kwargs) File "C:\freevine-1.1.4\services\roku\roku.py", line 46, in __init__ super().__init__(config, **kwargs) File "C:\freevine-1.1.4\utils\config.py", line 118, in __init__ uri = get_proxy(cli=self) ^^^^^^^^^^^^^^^^^^^ File "C:\freevine-1.1.4\utils\proxies.py", line 172, in get_proxy return windscribe.proxy(query) ^^^^^^^^^^^^^^^^^^^^^^^ File "C:\freevine-1.1.4\utils\proxies.py", line 46, in proxy raise ConnectionError(f"{output.stderr}") ConnectionError: MAIN : 2024/01/21 20:20:08 main.go:132: INFO windscribe-proxy client version v1.4.0+reproducible2 is starting... MAIN : 2024/01/21 20:20:08 main.go:203: WARNING Failed to load client state: open wndstate.json: The system cannot find the file specified.. It is OK for a first run. Performing cold init... MAIN : 2024/01/21 20:20:18 main.go:207: CRITICAL Cold init failed: Session call failed: Post "https://api.windscribe.com/Session?platform=chrome": context deadline exceeded
Last edited by Tom Saurus; 21st Jan 2024 at 19:45.
-
That command line works for me. Is windscribe-proxy somewhere in the path? I'm running on Linux so I'm not sure where that'd be for Windows.
-
It seems to accept Windscribe Proxy and if I turn off Nord VPN it doesn't even get as far as that. Also it doesn't seem to like East/Chicago. Roku and CWTV just don't seem to work for me. Thankfully Tubi TV, Pluto TV, Crackle and Plex work for me, along with some UK streaming channels. Here are the logs:
Code:Microsoft Windows [Version 10.0.22000.2176] (c) Microsoft Corporation. All rights reserved. C:\freevine-1.1.4>freevine.py get -sv res=480 -e S04E21 https://therokuchannel.roku.com/details/537a8dca9abb50eaa76f97f3ea147385/in-the-heat-of-the-night --proxy US East/Chicago ❯_freevine v1.1.4 Usage: freevine.py get [OPTIONS] [URL] Try 'freevine.py get --help' for help. Error: Got unexpected extra argument (East/Chicago) C:\freevine-1.1.4>freevine.py get -sv res=480 -e S04E21 https://therokuchannel.roku.com/details/537a8dca9abb50eaa76f97f3ea147385/in-the-heat-of-the-night --proxy US East/Chicago ❯_freevine v1.1.4 Usage: freevine.py get [OPTIONS] [URL] Try 'freevine.py get --help' for help. Error: Got unexpected extra argument (East/Chicago) C:\freevine-1.1.4>freevine.py get -sv res=480 -e S04E21 https://therokuchannel.roku.com/details/537a8dca9abb50eaa76f97f3ea147385/in-the-heat-of-the-night --windscribe proxy US East/Chicago ❯_freevine v1.1.4 Usage: freevine.py get [OPTIONS] [URL] Try 'freevine.py get --help' for help. Error: No such option: --windscribe C:\freevine-1.1.4>freevine.py get -sv res=480 -e S04E21 https://therokuchannel.roku.com/details/537a8dca9abb50eaa76f97f3ea147385/in-the-heat-of-the-night --proxy US East/Chicago ❯_freevine v1.1.4 Usage: freevine.py get [OPTIONS] [URL] Try 'freevine.py get --help' for help. Error: Got unexpected extra argument (East/Chicago) C:\freevine-1.1.4>freevine.py get -sv res=480 -e S04E21 https://therokuchannel.roku.com/details/537a8dca9abb50eaa76f97f3ea147385/in-the-heat-of-the-night --proxy US ❯_freevine v1.1.4 22:40:09.607 ←[4m←[32mINFO←[0m : ←[1mThe Roku Channel←[0m 22:40:09.678 ←[4m←[32mINFO←[0m : + Adding Windscribe proxy location: US Traceback (most recent call last): File "C:\freevine-1.1.4\freevine.py", line 15, in <module> cli() File "C:\Users\sheld\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 1157, in __call__ return self.main(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\sheld\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 1078, in main rv = self.invoke(ctx) ^^^^^^^^^^^^^^^^ File "C:\Users\sheld\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 1688, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\sheld\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 1434, in invoke return ctx.invoke(self.callback, **ctx.params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\sheld\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 783, in invoke return __callback(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\freevine-1.1.4\utils\commands.py", line 90, in get Service(config, **kwargs) File "C:\freevine-1.1.4\services\roku\roku.py", line 46, in __init__ super().__init__(config, **kwargs) File "C:\freevine-1.1.4\utils\config.py", line 118, in __init__ uri = get_proxy(cli=self) ^^^^^^^^^^^^^^^^^^^ File "C:\freevine-1.1.4\utils\proxies.py", line 172, in get_proxy return windscribe.proxy(query) ^^^^^^^^^^^^^^^^^^^^^^^ File "C:\freevine-1.1.4\utils\proxies.py", line 46, in proxy raise ConnectionError(f"{output.stderr}") ConnectionError: MAIN : 2024/01/21 22:40:09 main.go:132: INFO windscribe-proxy client version v1.4.0+reproducible2 is starting... MAIN : 2024/01/21 22:40:19 main.go:226: CRITICAL Server list retrieve failed: Get "https://assets.windscribe.com/serverlist/chrome/0/89c1cf268a235e9d2d85c948a074fcd2df0a271a?platform=chrome": context deadline exceeded C:\freevine-1.1.4>
Thank you SB47x & billybanna. I shouldn't be obsessing over this one episode of "In The Heat Of Night" I couldn't get. There is a lot to be grateful for. -
@stabbedbybrick, given that both Hola and Windscribe are configured to use 2 letter country codes in Freevine, I guess there is no way to specifically call a particular server for Windscribe ? These are just randomly selected yes ?
Code:Windscribe Canada East/Montreal Canada East/Toronto Canada West/Vancouver US Central/Atlanta US Central/Dallas US East/Chicago US East/Miami US East/New York US East/Washington DC US West/Los Angeles US West/Seattle United Kingdom/London
Code:Hola AU - Australia CA - Canada DK - Denmark GB - Great Britain NZ - New Zealand SE - Sweden UK - United Kingdom US - United States
-
Yes, that's correct. Only country codes are supported at the moment. It collects all available servers from that country and picks one at random. If you'd want to be more specific, you could get the host manually and then use "basic" as client:
Code:--proxy https://username:password@host:port
-
-
I just tested it myself and the first time it failed, ran it again and it worked, I think stabbedbybrick mentioned that each time you use a proxy e.g. US it rotates through the various options so if it fails the first time just try running again.
Code:PS D:\Videos\Freevine> python freevine.py get -sv res=480 -e S04E21 https://therokuchannel.roku.com/details/537a8dca9abb50eaa76f97f3ea147385/in-the-heat-of-the-night --proxy US ❯_freevine v1.1.4 15:41:33.488 INFO : The Roku Channel 15:41:33.502 INFO : + Adding Windscribe proxy location: US Traceback (most recent call last): File "D:\Videos\Freevine\lib\site-packages\anyio\streams\tls.py", line 140, in _call_sslobject_method result = func(*args) File "C:\Users\Paul\AppData\Local\Programs\Python\Python310\lib\ssl.py", line 974, in do_handshake self._sslobj.do_handshake() ssl.SSLWantReadError: The operation did not complete (read) (_ssl.c:997) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "D:\Videos\Freevine\lib\site-packages\anyio\_core\_tasks.py", line 115, in fail_after yield cancel_scope File "D:\Videos\Freevine\lib\site-packages\httpcore\_backends\anyio.py", line 69, in start_tls ssl_stream = await anyio.streams.tls.TLSStream.wrap( File "D:\Videos\Freevine\lib\site-packages\anyio\streams\tls.py", line 132, in wrap await wrapper._call_sslobject_method(ssl_object.do_handshake) File "D:\Videos\Freevine\lib\site-packages\anyio\streams\tls.py", line 147, in _call_sslobject_method data = await self.transport_stream.receive() File "D:\Videos\Freevine\lib\site-packages\anyio\_backends\_asyncio.py", line 1123, in receive await self._protocol.read_event.wait() File "C:\Users\Paul\AppData\Local\Programs\Python\Python310\lib\asyncio\locks.py", line 213, in wait await fut asyncio.exceptions.CancelledError: Cancelled by cancel scope 11137cc9090 During handling of the above exception, another exception occurred: Traceback (most recent call last): File "D:\Videos\Freevine\lib\site-packages\httpcore\_exceptions.py", line 10, in map_exceptions yield File "D:\Videos\Freevine\lib\site-packages\httpcore\_backends\anyio.py", line 78, in start_tls raise exc File "D:\Videos\Freevine\lib\site-packages\httpcore\_backends\anyio.py", line 68, in start_tls with anyio.fail_after(timeout): File "C:\Users\Paul\AppData\Local\Programs\Python\Python310\lib\contextlib.py", line 153, in __exit__ self.gen.throw(typ, value, traceback) File "D:\Videos\Freevine\lib\site-packages\anyio\_core\_tasks.py", line 118, in fail_after raise TimeoutError TimeoutError The above exception was the direct cause of the following exception: Traceback (most recent call last): File "D:\Videos\Freevine\lib\site-packages\httpx\_transports\default.py", line 67, in map_httpcore_exceptions yield File "D:\Videos\Freevine\lib\site-packages\httpx\_transports\default.py", line 371, in handle_async_request resp = await self._pool.handle_async_request(req) File "D:\Videos\Freevine\lib\site-packages\httpcore\_async\connection_pool.py", line 268, in handle_async_request raise exc File "D:\Videos\Freevine\lib\site-packages\httpcore\_async\connection_pool.py", line 251, in handle_async_request response = await connection.handle_async_request(request) File "D:\Videos\Freevine\lib\site-packages\httpcore\_async\connection.py", line 99, in handle_async_request raise exc File "D:\Videos\Freevine\lib\site-packages\httpcore\_async\connection.py", line 76, in handle_async_request stream = await self._connect(request) File "D:\Videos\Freevine\lib\site-packages\httpcore\_async\connection.py", line 156, in _connect stream = await stream.start_tls(**kwargs) File "D:\Videos\Freevine\lib\site-packages\httpcore\_backends\anyio.py", line 66, in start_tls with map_exceptions(exc_map): File "C:\Users\Paul\AppData\Local\Programs\Python\Python310\lib\contextlib.py", line 153, in __exit__ self.gen.throw(typ, value, traceback) File "D:\Videos\Freevine\lib\site-packages\httpcore\_exceptions.py", line 14, in map_exceptions raise to_exc(exc) from exc httpcore.ConnectTimeout The above exception was the direct cause of the following exception: Traceback (most recent call last): File "D:\Videos\Freevine\freevine.py", line 15, in <module> cli() File "D:\Videos\Freevine\lib\site-packages\click\core.py", line 1157, in __call__ return self.main(*args, **kwargs) File "D:\Videos\Freevine\lib\site-packages\click\core.py", line 1078, in main rv = self.invoke(ctx) File "D:\Videos\Freevine\lib\site-packages\click\core.py", line 1688, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) File "D:\Videos\Freevine\lib\site-packages\click\core.py", line 1434, in invoke return ctx.invoke(self.callback, **ctx.params) File "D:\Videos\Freevine\lib\site-packages\click\core.py", line 783, in invoke return __callback(*args, **kwargs) File "D:\Videos\Freevine\utils\commands.py", line 90, in get Service(config, **kwargs) File "D:\Videos\Freevine\services\roku\roku.py", line 52, in __init__ self.get_options() File "D:\Videos\Freevine\services\roku\roku.py", line 250, in get_options downloads, title = get_downloads(self) File "D:\Videos\Freevine\utils\options.py", line 163, in get_downloads content, title = stream.get_content(stream.url) File "D:\Videos\Freevine\services\roku\roku.py", line 202, in get_content content = self.get_series(url) File "D:\Videos\Freevine\services\roku\roku.py", line 96, in get_series episodes = asyncio.run(self.get_titles(data)) File "C:\Users\Paul\AppData\Local\Programs\Python\Python310\lib\asyncio\runners.py", line 44, in run return loop.run_until_complete(main) File "C:\Users\Paul\AppData\Local\Programs\Python\Python310\lib\asyncio\base_events.py", line 641, in run_until_complete return future.result() File "D:\Videos\Freevine\services\roku\roku.py", line 92, in get_titles return await asyncio.gather(*tasks) File "D:\Videos\Freevine\services\roku\roku.py", line 79, in fetch_titles response = await async_client.get(f"{self.api}{id}") File "D:\Videos\Freevine\lib\site-packages\httpx\_client.py", line 1786, in get return await self.request( File "D:\Videos\Freevine\lib\site-packages\httpx\_client.py", line 1559, in request return await self.send(request, auth=auth, follow_redirects=follow_redirects) File "D:\Videos\Freevine\lib\site-packages\httpx\_client.py", line 1646, in send response = await self._send_handling_auth( File "D:\Videos\Freevine\lib\site-packages\httpx\_client.py", line 1674, in _send_handling_auth response = await self._send_handling_redirects( File "D:\Videos\Freevine\lib\site-packages\httpx\_client.py", line 1711, in _send_handling_redirects response = await self._send_single_request(request) File "D:\Videos\Freevine\lib\site-packages\httpx\_client.py", line 1748, in _send_single_request response = await transport.handle_async_request(request) File "D:\Videos\Freevine\lib\site-packages\httpx\_transports\default.py", line 370, in handle_async_request with map_httpcore_exceptions(): File "C:\Users\Paul\AppData\Local\Programs\Python\Python310\lib\contextlib.py", line 153, in __exit__ self.gen.throw(typ, value, traceback) File "D:\Videos\Freevine\lib\site-packages\httpx\_transports\default.py", line 84, in map_httpcore_exceptions raise mapped_exc(message) from exc httpx.ConnectTimeout PS D:\Videos\Freevine> python freevine.py get -sv res=480 -e S04E21 https://therokuchannel.roku.com/details/537a8dca9abb50eaa76f97f3ea147385/in-the-heat-of-the-night --proxy US ❯_freevine v1.1.4 15:42:31.680 INFO : The Roku Channel 15:42:31.691 INFO : + Adding Windscribe proxy location: US 15:42:36.020 INFO : In the Heat of the Night (1988): 8 Season(s), 141 Episode(s) 15:42:40.720 INFO : In the Heat of the Night S04E21 No Other Road 15:42:40.720 INFO : a5181109bfb793d476486a693f3db1c4:9b10a4aa02f2057b4aadcefe35cafcc7 15:42:40.803 INFO : N_m3u8DL-RE (Beta version) 20230628 15:42:40.811 INFO : Loading URL: https://vod.delivery.roku.com/cf3b6dc1f66148e29d45b35b5aef020d/3c389920bfac420581414b279db9bd93/95e21dd0a1134531baca364d8b9de5e7/index.mpd 15:42:41.880 INFO : Content Matched: Dynamic Adaptive Streaming over HTTP 15:42:41.880 INFO : Parsing streams... 15:42:41.934 WARN : Writing meta json 15:42:41.944 INFO : Extracted, there are 11 streams, with 9 basic streams, 1 audio streams, 1 subtitle streams15:42:41.944 INFO : Vid *CENC 1920x1080 | 5508 Kbps | 1 | 23.976 | avc1.640028 | 1416 Segments | ~47m13s 15:42:41.944 INFO : Vid *CENC 1920x1080 | 4198 Kbps | 2 | 23.976 | avc1.640028 | 1416 Segments | ~47m13s 15:42:41.944 INFO : Vid *CENC 1280x720 | 3186 Kbps | 3 | 23.976 | avc1.64001F | 1416 Segments | ~47m13s 15:42:41.944 INFO : Vid *CENC 1280x720 | 2574 Kbps | 4 | 23.976 | avc1.64001F | 1416 Segments | ~47m13s 15:42:41.944 INFO : Vid *CENC 720x406 | 869 Kbps | 5 | 23.976 | avc1.64001E | 1416 Segments | ~47m13s 15:42:41.945 INFO : Vid *CENC 720x406 | 777 Kbps | 6 | 23.976 | avc1.64001E | 1416 Segments | ~47m13s 15:42:41.945 INFO : Vid *CENC 512x288 | 382 Kbps | 7 | 23.976 | avc1.640015 | 1416 Segments | ~47m13s 15:42:41.945 INFO : Vid *CENC 384x216 | 220 Kbps | 8 | 23.976 | avc1.64000D | 1416 Segments | ~47m13s 15:42:41.945 INFO : Vid *CENC 384x216 | 148 Kbps | 9 | 23.976 | avc1.64000D | 1416 Segments | ~47m13s 15:42:41.945 INFO : Aud *CENC 10 | 128 Kbps | mp4a.40.5 | eng | 2CH | 1416 Segments | ~47m13s 15:42:41.945 INFO : Sub 11 | eng | stpp | 1416 Segments | ~47m13s 15:42:41.945 INFO : Parsing streams... 15:42:41.949 INFO : Selected streams: 15:42:41.949 INFO : Vid *CENC 720x406 | 869 Kbps | 5 | 23.976 | avc1.64001E | 1416 Segments | ~47m13s 15:42:41.950 INFO : Aud *CENC 10 | 128 Kbps | mp4a.40.5 | eng | 2CH | 1416 Segments | ~47m13s 15:42:41.950 INFO : Sub 11 | eng | stpp | 1416 Segments | ~47m13s 15:42:41.950 WARN : Writing meta json 15:42:41.953 INFO : Save Name: In.the.Heat.of.the.Night.S04E21.No.Other.Road.406p.ROKU.WEB-DL.AAC2.0.H.264 15:42:41.953 WARN : MuxAfterDone is detected, binary merging is automatically enabled 15:42:41.954 INFO : Start downloading...Aud 10 | 128 Kbps | mp4a.40.5 | eng | 2CH 15:42:41.954 INFO : Start downloading...Sub 11 | eng | stpp 15:42:41.954 INFO : Start downloading...Vid 720x406 | 869 Kbps | 5 | 23.976 | avc1.64001E 15:42:42.076 WARN : Type: cenc 15:42:42.077 WARN : PSSH(WV): CAESEKUYEQm/t5PUdkhqaT89scQaCmludGVydHJ1c3QiASo= 15:42:42.077 WARN : KID: a5181109bfb793d476486a693f3db1c4 15:42:42.077 INFO : Trying to search for KEY from text file... 15:42:42.079 INFO : OK a5181109bfb793d476486a693f3db1c4:9b10a4aa02f2057b4aadcefe35cafcc7 15:42:42.079 WARN : Reading media info... 15:42:42.101 INFO : [0x1]: Audio, aac (mp4a) 15:42:42.310 WARN : Reading media info... 15:42:42.335 INFO : [0x1]: Data, none (stpp) (default) 15:42:42.530 WARN : Type: cenc 15:42:42.531 WARN : PSSH(WV): CAESEKUYEQm/t5PUdkhqaT89scQaCmludGVydHJ1c3QiASo= 15:42:42.531 WARN : KID: a5181109bfb793d476486a693f3db1c4 15:42:42.531 INFO : Trying to search for KEY from text file... 15:42:42.531 INFO : OK a5181109bfb793d476486a693f3db1c4:9b10a4aa02f2057b4aadcefe35cafcc7 15:42:42.532 WARN : Reading media info... 15:42:42.548 INFO : [0x1]: Video, h264 (avc1), 720x406 15:43:03.549 INFO : Binary merging... 15:43:04.900 INFO : Decrypting... 15:43:14.164 WARN : Extracting TTML(mp4) subtitle... 15:43:14.754 INFO : Binary merging... 15:43:36.501 INFO : Binary merging... 15:43:37.214 INFO : Decrypting... 15:43:39.393 WARN : In.the.Heat.of.the.Night.S04E21.No.Other.Road.406p.ROKU.WEB-DL.AAC2.0.H.264.mp4 15:43:39.393 WARN : In.the.Heat.of.the.Night.S04E21.No.Other.Road.406p.ROKU.WEB-DL.AAC2.0.H.264.eng.m4a 15:43:39.393 WARN : In.the.Heat.of.the.Night.S04E21.No.Other.Road.406p.ROKU.WEB-DL.AAC2.0.H.264.eng.srt 15:43:39.393 WARN : Muxing to In.the.Heat.of.the.Night.S04E21.No.Other.Road.406p.ROKU.WEB-DL.AAC2.0.H.264.MUX.mkv 15:43:41.565 WARN : Cleaning files... 15:43:41.589 WARN : Rename to In.the.Heat.of.the.Night.S04E21.No.Other.Road.406p.ROKU.WEB-DL.AAC2.0.H.264.mkv 15:43:41.590 INFO : Done PS D:\Videos\Freevine>
-
-
-
What's Changed in v1.1.5
Added a proxy fallback for channel4. If API request is unsuccessful, it'll fetch a proxy URI and try again. Remember to set the proxy in the config for this to work. -
-
Hi Chaps,..
Fantastic that tvnz has appeared... thank you stabbed.
My first attempt with the latest 1.1.5 and using billyB's gui.
All requirements updated.
Also added to config.yaml
proxy: windscribe
windscribe:
username: (my own username)
password: (my own password)
would this cause a conflict if i was using just the cmd prompt and i added --proxy nz to the end of my request.
output from my first request:
❯_freevine v1.1.5
12:09:40.616 ←[4m←[32mINFO←[0m : ←[1mTVNZ←[0m
12:09:40.618 ←[4m←[32mINFO←[0m : + Adding service profile
12:09:40.786 ←[4m←[32mINFO←[0m : Cache is empty, aquiring new tokens...
12:09:40.786 ←[4m←[32mINFO←[0m : Authenticating with service...
12:09:41.768 ←[4m←[32mINFO←[0m : + New tokens placed in cache
Traceback (most recent call last):
File "C:\freevine-1.1.5\freevine.py", line 15, in <module>
cli()
File "C:\Users\xxxxxxxxxx\AppData\Local\Programs\Python \Python311\Lib\site-packages\click\core.py", line 1157, in __call__
return self.main(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\xxxxxxxxxx\AppData\Local\Programs\Python \Python311\Lib\site-packages\click\core.py", line 1078, in main
rv = self.invoke(ctx)
^^^^^^^^^^^^^^^^
File "C:\Users\xxxxxxxxxx\AppData\Local\Programs\Python \Python311\Lib\site-packages\click\core.py", line 1688, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\xxxxxxxxxx\AppData\Local\Programs\Python \Python311\Lib\site-packages\click\core.py", line 1434, in invoke
return ctx.invoke(self.callback, **ctx.params)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\xxxxxxxxxx\AppData\Local\Programs\Python \Python311\Lib\site-packages\click\core.py", line 783, in invoke
return __callback(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\freevine-1.1.5\utils\commands.py", line 90, in get
Service(config, **kwargs)
File "C:\freevine-1.1.5\services\tvnz\tvnz.py", line 57, in __init__
self.get_options()
File "C:\freevine-1.1.5\s"cervices\tvnz\tvnz.py", line 365, in get_options
self.download(download, title)
File "C:\freevine-1.1.5\services\tvnz\tvnz.py", line 368, in download
manifest, lic_url = self.get_playlist(stream.data)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\freevine-1.1.5\services\tvnz\tvnz.py", line 245, in get_playlist
raise ConnectionError(f"{r.text}")
ConnectionError: [{"client_geo": "gb", "error_subcode": "CLIENT_GEO", "error_code": "ACCESS_DENIED", "message": "Access to this resource is forbidden by access policy."}]
C:\freevine-1.1.5>
I added Hola into id/country name only because the dropdown for that tag showed # basic, hola or windscribe.
The very last piece of the request is obvious,..
ConnectionError: [{"client_geo": "gb", "error_subcode": "CLIENT_GEO", "error_code": "ACCESS_DENIED", "message": "Access to this resource is forbidden by access policy."}]
-------------------------------------
my 2nd attempt: I changed the id/country name to nz.
within option I selected Hola for the proxy.
selected single episode 1920x1080 (assuming it will try for the highest possible)
https://www.tvnz.co.nz/shows/breathtaking/episodes/s1-e1
output gave me:
❯_freevine v1.1.5
12:35:02.469 ←[4m←[32mINFO←[0m : ←[1mTVNZ←[0m
12:35:02.469 ←[4m←[32mINFO←[0m : + Adding service profile
12:35:02.479 ←[4m←[32mINFO←[0m : Using cached tokens
Traceback (most recent call last):
File "C:\freevine-1.1.5\freevine.py", line 15, in <module>
cli()
File "C:\Users\xxxxxxxxxx\AppData\Local\Programs\Python \Python311\Lib\site-packages\click\core.py", line 1157, in __call__
return self.main(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\xxxxxxxxxx\AppData\Local\Programs\Python \Python311\Lib\site-packages\click\core.py", line 1078, in main
rv = self.invoke(ctx)
^^^^^^^^^^^^^^^^
File "C:\Users\xxxxxxxxxx\AppData\Local\Programs\Python \Python311\Lib\site-packages\click\core.py", line 1688, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\xxxxxxxxxx\AppData\Local\Programs\Python \Python311\Lib\site-packages\click\core.py", line 1434, in invoke
return ctx.invoke(self.callback, **ctx.params)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\xxxxxxxxxx\AppData\Local\Programs\Python \Python311\Lib\site-packages\click\core.py", line 783, in invoke
return __callback(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\freevine-1.1.5\utils\commands.py", line 90, in get
Service(config, **kwargs)
File "C:\freevine-1.1.5\services\tvnz\tvnz.py", line 57, in __init__
self.get_options()
File "C:\freevine-1.1.5\services\tvnz\tvnz.py", line 365, in get_options
self.download(download, title)
File "C:\freevine-1.1.5\services\tvnz\tvnz.py", line 368, in download
manifest, lic_url = self.get_playlist(stream.data)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\freevine-1.1.5\services\tvnz\tvnz.py", line 245, in get_playlist
raise ConnectionError(f"{r.text}")
ConnectionError: [{"client_geo": "gb", "error_subcode": "CLIENT_GEO", "error_code": "ACCESS_DENIED", "message": "Access to this resource is forbidden by access policy."}]
C:\freevine-1.1.5>
----------------------------------------------
3rd test: images only
[Attachment 76383 - Click to enlarge]
[Attachment 76384 - Click to enlarge]
and it just sits on this second cli screen.... it's not hung or frozen,.... just sits there with the cursor flashing.Last edited by LastResort; 23rd Jan 2024 at 07:02.
-
Windscribe doesn't have a NZ server, so I expect specifying --proxy NZ in your command with windscribe set in the config file won't work ( not sure if it errors or just ignores it in that case, haven't tested that specifically).
edit: since tested that - you'll get this error.
"ValueError: Proxy server for NZ was not found"
As an aside I get the same error as you with the Hola NZ proxy. I've come to the conclusion TVNZ just doesn't like it. Oh and I tried many times that Hola temporarily banned my IP
Privado VPN works fine BTW, so I'll stick with that for NZ.Last edited by billybanana; 23rd Jan 2024 at 08:16.
-
got same as you, tvnz dont like windscribe with and without --proxy nz
expressvpn got problem with download
Code:13:54:33.644 WARN : An error occurred while sending the request. 13:54:34.106 WARN : Download speed too slow! 13:54:34.107 WARN : Download speed too slow! 13:54:34.116 WARN : An error occurred while sending the request. 13:54:34.251 WARN : An error occurred while sending the request. 13:54:34.382 WARN : An error occurred while sending the request. 13:54:34.806 WARN : An error occurred while sending the request. 13:54:35.999 WARN : An error occurred while sending the request. 13:54:36.000 WARN : An error occurred while sending the request. 13:54:36.146 WARN : An error occurred while sending the request. 13:54:38.637 WARN : An error occurred while sending the request. Vid 1280x720 | 2334 Kbps | 25 ---------------------------------------- 66% 24.24MB/36.40MB 0.00Bps(6) 00:01:40 \ Aud 192 Kbps | en ---------------------------------------- 66% 2.01MB/3.04MB 0.00Bps(7) 00:01:36 \
-
I look forward to trying the latest version. I will see if TVNZ just works with Nord VPN without proxy involved. About the issue with I gave Windscribe Proxy when it comes to Roku US and CWTV at least twenty tries and it failed each time. I have to focus on what works for me and perhaps TubiTV will pick up some of the stuff I can't access or maybe Pluto, Plex or Crackle will.
-
Chaps,
I did read somewhere that tvnz knows and can see the time (as in 24 hour clock) and if the two do not match they will not allow access. i.e. your own clock has to be on the same time as nz.
I only use windscibe for there free 10gb a month. and I'm aware of their lack of service in nz,... but I'm also with proton, would have been great if nz was one of there free locations.
I'm still confused as to why -- proxy nz starts and then sits their doing nothing, yet --proxy us works fine. (using hola) not windscribe.
I'll retest hola with a time change to nz and see what happens. -
Yeah, that can happen if you're too persistent. It's only temporary, though.
But yes, these proxies won't solve every site. They're just additional tools to try. And from experience, NZ and AU sites can be ridiculously aggressive when it comes to blocking.
I know it's also possible to set up proxies using your NordVPN credentials, which would be a massive upgrade. It requires an active subscription, though, so not everyone would be able to use it. Still, might be worth looking into. -
I'm not sure if that worked or not. It kept saying that git was an uncogzied command (or something like that). It did say update complete at the end though.
Also, I was able to download from Pluto a free weeks ago, but now when I try I get this error
https://pastebin.com/u2BgghWD
I didn't do step 4 during the installation:
Create /utils/wvd/ folder and place either .wvd file or private_key and client_id blob inside
But that didn't matter a few weeks ago. I just did a test with cbc gem and it worked, so I'm not sure what's up with Pluto.
Also, this stuff is pretty advanced for me, so sorry if I'm asking dumb questions. -
With a change of date and time to match nz i had this... using cli only..
The request started and I had the same as before (as in the 2nd image above (cli)) with the cursor blinking...
I left this running for about 30 minutes, this was the results.
C:\freevine-1.1.5>freevine.py get --complete https://www.tvnz.co.nz/shows/breathtaking --proxy nz
❯_freevine v1.1.5
04:09:19.761 ←[4m←[32mINFO←[0m : ←[1mTVNZ←[0m
04:09:19.763 ←[4m←[32mINFO←[0m : + Adding service profile
04:09:19.771 ←[4m←[32mINFO←[0m : + Adding Hola proxy location: NZ
Traceback (most recent call last):
File "C:\freevine-1.1.5\freevine.py", line 15, in <module>
cli()
File "C:\Users\xxxx\AppData\Local\Programs\Python\Pytho n311\Lib\site-packages\click\core.py", line 1157, in __call__
return self.main(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\xxxx\AppData\Local\Programs\Python\Pytho n311\Lib\site-packages\click\core.py", line 1078, in main
rv = self.invoke(ctx)
^^^^^^^^^^^^^^^^
File "C:\Users\xxxx\AppData\Local\Programs\Python\Pytho n311\Lib\site-packages\click\core.py", line 1688, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\xxxx\AppData\Local\Programs\Python\Pytho n311\Lib\site-packages\click\core.py", line 1434, in invoke
return ctx.invoke(self.callback, **ctx.params)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\xxxx\AppData\Local\Programs\Python\Pytho n311\Lib\site-packages\click\core.py", line 783, in invoke
return __callback(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\freevine-1.1.5\utils\commands.py", line 90, in get
Service(config, **kwargs)
File "C:\freevine-1.1.5\services\tvnz\tvnz.py", line 49, in __init__
super().__init__(config, **kwargs)
File "C:\freevine-1.1.5\utils\config.py", line 118, in __init__
uri = get_proxy(cli=self)
^^^^^^^^^^^^^^^^^^^
File "C:\freevine-1.1.5\utils\proxies.py", line 155, in get_proxy
return hola.proxy(query)
^^^^^^^^^^^^^^^^^
File "C:\freevine-1.1.5\utils\proxies.py", line 91, in proxy
raise ConnectionError(f"{output.stderr}")
ConnectionError: MAIN : 2024/01/24 04:09:19 main.go:196: WARNING Detected latest extension version: "1.219.646". Pass -ext-ver parameter to skip resolve and speedup startup
MAIN : 2024/01/24 04:09:20 holaapi.go:372: INFO zgettunnels error: empty response; will retry after 3.484s
MAIN : 2024/01/24 04:09:24 holaapi.go:372: INFO zgettunnels error: empty response; will retry after 6.14s
MAIN : 2024/01/24 04:09:30 holaapi.go:372: INFO zgettunnels error: empty response; will retry after 9.819s
MAIN : 2024/01/24 04:09:40 holaapi.go:372: INFO zgettunnels error: empty response; will retry after 12.248s
MAIN : 2024/01/24 04:09:52 holaapi.go:372: INFO zgettunnels error: empty response; will retry after 10.742s
MAIN : 2024/01/24 04:10:03 holaapi.go:372: INFO zgettunnels error: empty response; will retry after 15.344s
MAIN : 2024/01/24 04:10:19 holaapi.go:372: INFO zgettunnels error: empty response; will retry after 47.872s
MAIN : 2024/01/24 04:11:07 holaapi.go:372: INFO zgettunnels error: empty response; will retry after 1m15.928s
MAIN : 2024/01/24 04:12:23 holaapi.go:372: INFO zgettunnels error: empty response; will retry after 1m41.322s
Transaction error: empty response. Retrying with the fallback mechanism...
MAIN : 2024/01/24 04:14:04 holaapi.go:375: ERROR All attempts failed: empty response
Transaction recovery mechanism failure: fetched expired fallback config. -
Why I went with NordVPN was it was on sale at the Best Buy Canada website. I was hesitant to trust a VPN with my Credit Card though if I do in the future I will just buy a Visa Prepaid Gift Card and use that. I do have the free Proton but it is a frustrating VPN, it starts out in Japan then you have to keep going switching servers to get to the United States and the free version on the plus side has no download limit but it can be a pain as most of its free servers are in Countries I have no reason to watch any streaming content from.
I haven't figured out the Swedish service as I don't understand that language but I am massive fan of Mankell's Wallander and The Girl With The Dragon Tattoo movies so I could enjoy shows of a similar vain as the subtitles and such seem to really make you concentrate and get sucked into the plot. -
Does TVNZ require you to sign up like CBC? I gave it a try in Freevine and it asked for credentials.
-
Yes, I took out a free 24 hour trial with cyberghost,.... and i was able to access tvnz to create an account, i searched up a random address in a built up area of NZ and gave a moody name and details. I disconnected from cyberghost to access my email to copy and paste the registration details they sent to a text file. then reconnected through cyberghost opened chrome and pasted the link tvnz sent me. i was registered and done. but, and this is the big but,.... they could still see that there was something dodgy with my ip address through cyberghost. I was able to capture the manifest.mpd but after about 10 seconds of trying to load the program to watch, tvnz kicked up a stink and said access denied we do not show outside of new zealand (or words to that effect). It may have been my clock and date settings,... as I think they have a way of checking those as well. The only reason I tried cyberghost was because no CC was required. its a pita that so many others don't do the same. It's not being able to cancel a contract that concerns me. It's the "CyberGhost VPN Exclusive 45-Day Money-Back Guarantee" that gets me,.... who exactly is the guarantee with. I think the only guarantee you can truly have is through your own CC company. But that's not only Cyberghost,.. they all seem to be much of the same. Proton say the same with there guarantee... (16 servers and 1 city for NZ) Not that difficult for tvnz to see the ip addresses being used.
-
LastResort: Thank you for your post. I think you are right in being cautious. I was assuming TVNZ just wanted an email address and a username. Perhaps others will write of their experience and from that a way will be revealed that will help you.
-
I was able to download from Pluto a free weeks ago, but now when I try I get this error
08:19:29.667 ←[4m←[32mINFO←[0m : ←[1mPlutoTV←[0m
Traceback (most recent call last):
File "C:\Users\super\Desktop\freevine-1.1.1\freevine.py", line 15, in <module>
cli()
File "C:\Users\super\AppData\Roaming\Python\Python312\s ite-packages\click\core.py", line 1157, in __call__
return self.main(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\super\AppData\Roaming\Python\Python312\s ite-packages\click\core.py", line 1078, in main
rv = self.invoke(ctx)
^^^^^^^^^^^^^^^^
File "C:\Users\super\AppData\Roaming\Python\Python312\s ite-packages\click\core.py", line 1688, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\super\AppData\Roaming\Python\Python312\s ite-packages\click\core.py", line 1434, in invoke
return ctx.invoke(self.callback, **ctx.params)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\super\AppData\Roaming\Python\Python312\s ite-packages\click\core.py", line 783, in invoke
return __callback(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\super\Desktop\freevine-1.1.1\utils\commands.py", line 81, in get
Service(config, **kwargs)
File "C:\Users\super\Desktop\freevine-1.1.1\services\pluto\pluto.py", line 51, in __init__
self.get_options()
File "C:\Users\super\Desktop\freevine-1.1.1\services\pluto\pluto.py", line 318, in get_options
downloads, title = get_downloads(self)
^^^^^^^^^^^^^^^^^^^
File "C:\Users\super\Desktop\freevine-1.1.1\utils\options.py", line 163, in get_downloads
content, title = stream.get_content(stream.url)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\super\Desktop\freevine-1.1.1\services\pluto\pluto.py", line 301, in get_content
content = self.get_series(url)
^^^^^^^^^^^^^^^^^^^^
File "C:\Users\super\Desktop\freevine-1.1.1\services\pluto\pluto.py", line 118, in get_series
for series in data["seasons"]
~~~~^^^^^^^^^^^
TypeError: list indices must be integers or slices, not str
I didn't do step 4 during the installation:
Create /utils/wvd/ folder and place either .wvd file or private_key and client_id blob inside
But that didn't matter a few weeks ago. I just did a test with cbc gem and it worked, so I'm not sure what's up with Pluto.
Also, this stuff is pretty advanced for me, so sorry if I'm asking dumb questions. -
Nope, safe to say if you got "git was an unrecognized command" then it didn't work, the message at the end displays no matter what.
I asked ChatGPT to write a guide for you including how to create and run from a Venv as well which is pretty important:
(if you're not using Windows 11 tell me what OS you're using and I'll tell ChatGPT to update the guide).
Of course, Paul. I'll provide you with a guide for installing Git, cloning the repository, and setting up a Python virtual environment (venv) on Windows 11.
### Installing Git on Windows 11
1. **Download Git:**
- Go to [Git Downloads](https://git-scm.com/downloads).
- Click on the "Windows" link to download the installer.
2. **Install Git:**
- Run the downloaded installer.
- Follow the installation steps. Default settings are generally fine, but ensure "Git from the command line and also from 3rd-party software" is selected for PATH.
- Complete the installation.
3. **Verify Installation:**
- Open Command Prompt or Git Bash.
- Type `git --version` and press Enter to confirm the installation.
### Cloning the Repository
1. **Open Command Prompt or Git Bash:**
- Navigate to the folder where you want to clone the repository.
2. **Clone the Repository:**
- Enter:
```
git clone https://github.com/stabbedbybrick/freevine.git
```
- This creates a "freevine" folder with the repository's contents.
### Setting Up a Python Virtual Environment
1. **Install Python:**
- If not already installed, download Python from [python.org](https://www.python.org/downloads/windows/).
- During installation, ensure that "Add Python to PATH" is checked.
2. **Verify Python Installation:**
- In Command Prompt, type `python --version` and press Enter.
3. **Navigate to the Project Folder:**
- In Command Prompt, navigate to the cloned "freevine" directory:
```
cd path\to\freevine
```
Replace `path\to\freevine` with the actual path to the folder.
4. **Create a Virtual Environment:**
- In the "freevine" directory, run:
```
python -m venv venv
```
- This creates a virtual environment named "venv" in the project folder.
5. **Activate the Virtual Environment:**
- To activate it, run:
```
venv\Scripts\activate
```
- Your command line should now indicate that you're inside the 'venv'.
6. **Install Required Packages (if any):**
- If there's a `requirements.txt` file, install the required packages using:
```
pip install -r requirements.txt
```
7. **Deactivate the Virtual Environment:**
- When done, you can deactivate the virtual environment by typing `deactivate` in Command Prompt.
By following these steps, the person you're helping should be able to install Git, clone the repository, and set up a Python virtual environment on Windows 11. Remember, the exact steps can vary slightly depending on the specific configurations and needs of the project.
Similar Threads
-
UK Free to Air Downloader
By A_n_g_e_l_a in forum Video Streaming DownloadingReplies: 597Last Post: 27th Apr 2025, 08:15 -
Video/Screenshot Guide to Freevine/N_m3u8DL-RE downloader for MacOS
By gwilliams1996 in forum Video Streaming DownloadingReplies: 16Last Post: 15th May 2024, 06:14 -
Forcing quality on streaming services
By qnufc in forum Video Streaming DownloadingReplies: 10Last Post: 8th Mar 2024, 17:27 -
Are we going to see all streaming services switching to L1 completely
By Loryanam2 in forum Video Streaming DownloadingReplies: 7Last Post: 5th Mar 2023, 07:37 -
Portable Streaming DownLoader for XMovies8?
By KermitJ in forum Video Streaming DownloadingReplies: 0Last Post: 27th Sep 2019, 10:44