GithubHelp home page GithubHelp logo

ulozto-downloader's Introduction

Ulož.to downloader

Konec Ulož.to downloaderu

Ulož.to bohužel k 1. 12. 2023 přestalo nabízet stahování cizích souborů. Od teď funguje již jen jako Ulož.to Disk a programy typu ulozto-downloader ztrácejí význam a již nejsou použitelné.

Z tohoto důvodu je další rozvoj ulozto-downloaderu ukončen. Děkuji všem, kteří svoji troškou (ať už pull requestem, hlášením chyb nebo jenom tím, že ho používali a říkali o tom ostatním) přispěli k jeho rozšiřování, byl to hezký projekt.

Sbohem a díky za všechny ryby :)

End of Ulož.to downloader

Unfortunately, Ulož.to stopped offering downloads of shared files on December 1, 2023. Now it is only an Ulož.to Disk and programs like the ulozto-downloader lose their meaning and are no longer usable.

For this reason, further development of the ulozto-downloader is ceased. Thanks to everyone who added their bits for the ulozto-downloader (either by pull request, reporting errors or just by using it and spreading its popularity). It was a nice project.

So long and thanks for all the fish :)


English info

This is a parallel downloader from Ulož.to with automatic CAPTCHA solving. This README is in Czech but the program itself and its help are in English (try to run it with --help option).

Úvod

Paralelní stahovač z Ulož.to inspirovaný Vžum (credits to Popcorn) s automatickým louskáním CAPTCHA kódů pomocí TensorFlow modelu z projektu ulozto-captcha-breaker (credits to Jan Palasek).

Narozdíl od originálního Vžum je tato verze napsaná v Pythonu, dá se provozovat jednoduše i na Linuxu a zdrojový kód je veřejně dostupný, což umožňuje další forky a rozšíření do budoucna. Například by mohla vzniknout "serverová" verze s webovým rozhraním.

Nápady na další vylepšení (případně rovnou pull requesty) vítány :-)

Klíčové vlastnosti

  • Sám pozná downloady, kde Ulož.to umožňuje stahovat bez CAPTCHA kódů
  • Dokáže přečíst sám CAPTCHA kódy díky projektu ulozto-captcha-breaker (thx Jan Palasek)
    • Louská kódy pomocí natrénovaného TensorFlow modelu
  • Download linky získává přes Tor, aby se vyhnul nové limitaci ze strany Uloz.to
  • Umí opakovaně využít stejný stahovací link pro více částí
    • Ulož.to nyní (podzim 2020) umožňuje získat jen dva stahovací linky za minutu, ale stejný link je možné používat po dostahování původní části opakovaně pro stahování dalších částí
  • Umí navazovat přerušená stahování (pokud se zachová stejný počet částí)
  • Umí stahovat zaheslované soubory (na straně Ulož.to)
  • Stahuje přímo do finálního souboru, jednotlivá stahování zapisují na správné místo v souboru (než program ohlásí dostahováno, je soubor neúplný)
  • Konzolový status panel se statistikou úspěšnosti při získávání linků
  • Celkový průběh staženo / okamžitá rychlost stahování ve druhém řádku status panelu (save progress monitor)
  • Cache soubor download linků pro pokračování nebo opětovné stažení, po restartu se bez nového získávání download linků rovnou stahuje a nové download linky se získávají jen když jich není v cache souboru dostatek. Vytváří malý textový soubor .ucache jenž je možné použít znovu a stahovat maximální rychlostí ihned bez získávání linků. Tento soubor má malou velikost a lze ho např. sdílet. U velkých souborů (100ky MB) je platnost linku 48 hodin.

Instalace

Ulož.to downloader je napsaný v Pythonu a je distribuovaný v podobě zdrojových kódů, které si každý může spustit, pokud má nainstalovaný Python. Předtím než s čímkoliv začnete, ujistěte se prosím, že máte:

  • Nainstalovaný Python 3 – externí návod na instalaci
  • Umíte instalovat Python balíky pomocí příkazu pip nebo pip3 v příkazové řádce – malý externí návod na Pip

Protože Ulož.to downloader závisí na několika externích projektech, bude mimo instalace samotného ulozto-downloaderu potřeba zajistit ještě několik dalších věcí:

  • TOR pro získávání download linků z různých IP adres a vyhnutí se limitaci
  • Jeden z:
    • TensorFlow Lite pro automatické louskání CAPTCHA kódů
    • Tkinter když budete používat ruční opisování CAPTCHA kódů

Instalace TORu

Tor je program umožňující přistupovat na cílovou stránku přes jiné počítače a tím obejít limitaci na počet stahovacích linků z jedné IP adresy.

Ulož.to downloader vyžaduje spustitelný příkaz tor (vnitřně používá stem) a očekává tento příkaz v $PATH.

Na Linuxu:

sudo apt install tor
  # nebo...
yum install tor
  # nebo podle vašeho balíčkovacího systému

Na Windows lze instalovat TorBrowser a dostat tor.exe do %PATH%, tedy přidat do systémové proměnné %PATH složku s tor.exe z instalace TorBrowseru (typicky C:\Program Files\Tor Browser\Browser\TorBrowser\Tor).

Instalace TensorFlow Lite (automatické louskání CAPTCHA)

TensorFlow Lite je balíček, který umožní spouštět na CAPTCHA obrázcích natrénovanou neuronovou síť a tím je automaticky louskat.

Dá se použít buď odlehčený Python balíček tflite-runtime, nebo plnotučný Python balíčku tensorflow (vydávání tflite-runtime se často opožďuje, proto je často potřeba s novým Pythonem sáhnout po plnotučné verzi).

Oba balíky se dají instalovat přes Python instalátor pip3. Správný balík pro danou verzi Pythonu by se měl dát instalovat společně s celým Ulož.to downloaderem, když použijete při instalaci ulozto-downloader[auto-captcha] (viz níže), případně ručně takto:

pip3 install tflite-runtime
pip3 install tensorflow

Verzi pro Windows (nebo pokud vám instalace hází chybu) stáhněte z repozitáře pycoral

Pokud vám tato metoda nefunguje (instalace vypisuje "Could not find a version that satisfies the requirement"), je potřeba instalovat plnotučný tensorflow (pozor, zabere po instalaci asi 1GB):

pip3 install tensorflow

Pokud vám žádná z metod výše nefunguje, postupujte podle instrukcí na stránce TensorFlow Lite, kde si buď instalujte balík do systému a nebo si stáhněte z odkazu správný Wheel soubor podle své verze Pythonu (zjistíte zavoláním python3 -V).

Instalace Tkinter (ruční opisování CAPTCHA)

Pokud se vám nepovede rozchodit TensorFlow Lite pro automatické louskání (nebo chcete poměřit síly s natrénovaným modelem a louskat ručně), potřebujete na systému instalovaný Tkinter na zobrazení okénka s obrázkem.

Bohužel není na PyPI, takže je potřeba instalovat ručně. Často už je instalovaný, ale pokud by náhodou nebyl, tak bývá v balíčku python3-tk (případně následujte instrukce na webu Tk).

Instalace Ulož.to downloaderu

Teď už byste měli mít vše připraveno. Stačí jen instalovat samotný Ulož.to downloader.

Nejjednodušší je využít verzi uveřejněnou na PyPI. Pokud máte platformu, pro který existuje na PyPI validní balíček tflite-runtime, můžete rovnou instalovat speciální target s [auto-captcha] a ulehčit si tak instalaci TensorFlow Lite.

pip3 install --upgrade ulozto-downloader
pip3 install --upgrade ulozto-downloader[auto-captcha]  # <-- doporučeno

Instalace na dalších platformách

Použití

Při zavolání s -h nebo --help vypíše Ulož.to downloader popis všech svých přepínačů a nastavítek. Zde jsou vyjmenována základní nastavení, ale výčet není rozhodně kompletní.

Od verze 3.1 je v defaultu aktivovaná autodetekce TensorFlow a pokud je instalované, tak se použije pro automatické louskání louskání CAPTCHA kódů, jinak se vypisuje ruční opisování. Pro vynucení chování můžete použít přepínače:

  • --auto-captcha vynutí použití TensorFlow Lite
  • --manual-captcha vynutí použití manuálního opisování

Pokud není dostupný žádný solver, lze stahovat jen soubory bez CAPTCHA.

Pro volbu počtu částí slouží přepínač --parts N, default je 20 částí. Ve výchozím nastavení Ulož.to downloader zobrazuje pouze sumární stav. Pokud chcete zobrazit stav stahování jednotlivých částí, použijte přepínač --parts-progress.

ulozto-downloader --parts 30 --parts-progress "https://ulozto.cz/file/TKvQVDFBEhtL/debian-9-6-0-amd64-netinst-iso"

Lze specifikovat i více URL ke stažení, v takovém případě probíhá stahování sekvenčně (po dostahování prvního se začne stahovat druhý atd.):

ulozto-downloader --parts 30 "https://ulozto.cz/file/TKvQVDFBEhtL/debian-9-6-0-amd64-netinst-iso" "https://ulozto.cz/file/YPivhc3Jyn9r/debian-live-11-1-0-amd64-mate-iso"

Pro zadání hesla slouží přepínač --password <heslo>:

ulozto-downloader --parts 30 --password akcniset "https://uloz.to/file/FFwsQeBeMdcY/debian-9-6-0-amd64-netinst-iso"

Pokud chcete ukládat log do souboru, použijte přepínač --log <název souboru> (v defaultním nastavení se log neukládá).

Ukázka stahování

Při využití automatického louskání doporučuji využít velký počet částí, klidně 50 (spustíte ulozto-downloader a necháte ho pracovat, on si postupně louskne další stahovací linky a postupně navyšuje počet najednou stahovaných částí).

Další návody a dokumentace

Contributing

When contributing to this project, please use English in the code. Issues and pull request comments could be in Czech or English, I will discuss them according to the thread language :)

ulozto-downloader's People

Contributors

asmarcz avatar duchghast avatar engelthalerzat avatar filo891 avatar hroncok avatar jan-provaznik avatar koticka avatar marekvigas avatar mikulaszelinka avatar petrroll avatar pkejval avatar quoing avatar realcharmer avatar setnicka avatar spirecz avatar stinovlas avatar vladodriver avatar vojtak42 avatar xgimp avatar zbyna avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ulozto-downloader's Issues

Cannot download file

I cannot download any file.

$ ulozto-downloader --auto-captcha --parts 15 "https://ulozto.cz/file/eMRf6hjD/doremi-nobita-and-the-legend-of-the-green-giant-doraemon-movie-2008-f988be25-mkv"

Starting downloading for url 'https://ulozto.cz/file/eMRf6hjD/doremi-nobita-and-the-legend-of-the-green-giant-doraemon-movie-2008-f988be25-mkv'
Getting info (filename, filesize, ...)

Cannot download file: Cannot parse Ulozto.cz page to get download information, no direct download URL and no CAPTCHA challenge URL found

Některé ze stažených částí jsou vadné

Některé ze stažených částí mohou obsahovat chybovou html stránku "z Vašeho počítače se již stahuje" místo skutečných dat. Při původní úpravě na nové rozhraní jsem si toho nevšiml, ale při důkladnější kontrole stažených data to teď vidím. Budeme asi muset nakódit nějak retry v případě, že narazíme na tuhle stránku.

libstdc++.so.6: version `GLIBCXX_3.4.22' not found

Installed on SolydX Linux (Debian based) using pip3 as described in README, all the recommended dependencies present. But running the script throws series of errors after "CAPTCHA challenge will be displayed". Tried also without --auto-captcha, but result is the same. Terminal command and output:

`
ulozto-downloader --auto-captcha --parts 20 https://uloz.to/file/zDH6ajlc4UCX/bozena-e02-avi
Downloading model from https://github.com/JanPalasek/ulozto-captcha-breaker/releases/download/v2.2/model.tflite
100.0% 14147584 / 14140796
Downloading of the model finished
Starting downloading for url 'https://uloz.to/file/zDH6ajlc4UCX/bozena-e02-avi'
Getting info (filename, filesize, ...)
CAPTCHA protected download - CAPTCHA challenges will be displayed

Traceback (most recent call last):, trying to solve
File "/home/linuxbrew/.linuxbrew/bin/ulozto-downloader", line 48, in
main()
File "/home/linuxbrew/.linuxbrew/bin/ulozto-downloader", line 44, in main
d.download(args.url, args.parts, args.output)
File "/home/linuxbrew/.linuxbrew/opt/python/lib/python3.7/site-packages/ulozto_downloader/downloader.py", line 168, in download
download_url = next(self.captcha_download_links_generator)
File "/home/linuxbrew/.linuxbrew/opt/python/lib/python3.7/site-packages/ulozto_downloader/page.py", line 169, in captcha_download_links_generator
captcha_answer = captcha_solve_func("https:" + captcha_image_url, print_func=print_func)
File "/home/linuxbrew/.linuxbrew/opt/python/lib/python3.7/site-packages/ulozto_downloader/captcha.py", line 86, in call
import tflite_runtime.interpreter as tflite
File "/home/linuxbrew/.linuxbrew/opt/python/lib/python3.7/site-packages/tflite_runtime/interpreter.py", line 36, in
from tflite_runtime import _pywrap_tensorflow_interpreter_wrapper as _interpreter_wrapper
ImportError: /home/linuxbrew/.linuxbrew/opt/python/lib/python3.7/site-packages/tflite_runtime/../../../libstdc++.so.6: version `GLIBCXX_3.4.22' not found (required by /home/linuxbrew/.linuxbrew/opt/python/lib/python3.7/site-packages/tflite_runtime/_pywrap_tensorflow_interpreter_wrapper.cpython-37m-x86_64-linux-gnu.so)
`

Please help me

I have this error, I really don't know if I'm doing it right, can anyone help me? I would be very grateful and I am on Windows 10, Thank you
1
.

Změny v limitaci nových session z jedné IP

Alert, zdá se že změnili algoritmus podle kterého dostane IP adresa soft-ban a nové sessions vyžadují ReCaptchu. Zdá se že to už není 2 sessions / 1 minuta. Ostatní můžete zkusit jak vám to jede a reportovat, možná to protáhli na 2 minuty nebo tak...

[Bug?] Errno 24: Too many open files

Ahoj, momentálne som dal sťahovať 10gb video z uložto pri 750 partoch. To mi hneď napísalo error Errno 24: Too many open files. Postupne som znižoval až na 499 kde to vyzeralo byť ako tak v pohode. Ale po nejakých 40 partoch to začalo hádzať errory pomedzi riadky sťahovania. Pripojenia ktoré už boli nadviazané sa dosťahovali a odvtedy to stálo a žiadne nové pripojenia sa nevytvárali. Momentálne to skúšam len so 100 partami tak hádam to bude lepšie.

Máte niekto nejaký fix?

PS: Našiel som niečo takéto

Nahrazení tabulátorů mezerami

Dávám ke zvážení nahradit tabulátory čtyřmi mezerami.

PEP8 mluví celkem jasně:

  1. Use 4 spaces per indentation level.

  2. Spaces are the preferred indentation method. Tabs should be used solely to remain consistent with code that is already indented with tabs.

Osobně tabulátory v Pythoním kódu nepředpokládám a hodně mě matou. Přiznávám, že i nedávné editace jsem dělal tak, že jsem si na začátku nahradil tabulátory za mezery a na konci je zase konvertoval zpátky. U takhle malého projektu mi jednorázové přepnutí nepřijde jako problém. Klidně k tomu udělám i pull request, pokud bude Jirka souhlasit.

Stahovanie z pornfile.cz nefunguje

Zdravim,

nebolo by mozne pridat aj stahovanie zo serveru pornfile.cz, partnerskeho serveru uloz.zo? Momentalne mi to nefunguje, vyhadzuje nasledovnu chybu:

user@Mac-Pro Documents % python3.8 /Users/user/documents/ulozto_downloader-master/ulozto_downloader.py --parts 20 --output /Users/user/documents/ "https://pornfile.cz/file/F4FlzI3tldtS/rychly-prachy-cikanky-z-chanova-2-27-11-2019-mp4"
Starting downloading for url 'https://pornfile.cz/file/F4FlzI3tldtS/rychly-prachy-cikanky-z-chanova-2-27-11-2019-mp4'
Getting info (filename, filesize, ...)
Cannot download file: Cannot parse Uloz.to page to get download information, no slowDownload URL and no CAPTCHA challenge URL found
user@Mac-Pro Documents % 

Vopred diky.

WARNING: File '{filename}' already exists, overwrite it? [y/n]

Hi, great piece of software however suppose you want to do something like this:

while IFS= read -r line; do
    ulozto-downloader --auto-captcha --parts 50 $line
done < to_download.txt

It would be really convient if you cound add another parameter, say --Y or --N, that would do the obvious thing here.

TypeError: can't pickle weakref objects / EOFError: Ran out of input

I keep getting these errors, I searched but I'm not really sure how to fix it. I'm very new to this so please be considerate.

I'm using Python 3.7 on Windows 10.

File: debian-9.6.0-amd64-netinst.iso
URL: https://ulozto.cz/file/TKvQVDFBEhtL/debian-9-6-0-amd64-netinst-iso
Download type: CAPTCHA protected download
Size / parts: 291.0MB => 15 x 19.4MB
[Part 0] Waiting for CAPTCHA...
[Part 1] Waiting for CAPTCHA...
[Part 2] Waiting for CAPTCHA...
[Part 3] Waiting for CAPTCHA...
[Part 4] Waiting for CAPTCHA...
[Part 5] Waiting for CAPTCHA...
[Part 6] Waiting for CAPTCHA...
[Part 7] Waiting for CAPTCHA...
[Part 8] Waiting for CAPTCHA...
[Part 9] Waiting for CAPTCHA...
[Part 10] Waiting for CAPTCHA...
[Part 11] Waiting for CAPTCHA...
[Part 12] Waiting for CAPTCHA...
[Part 13] Waiting for CAPTCHA...
[Part 14] Waiting for CAPTCHA...Traceback (most recent call last):
File "c:\users\oknchm\appdata\local\programs\python\python37\lib\runpy.py", line 193, in _run_module_as_main
[Progress] 0.00 MB (0.00 %) avg. speed: 0.00 MB/s curr. speed: 0.00 MB/s remaining: 0:00:00
File "c:\users\oknchm\appdata\local\programs\python\python37\lib\runpy.py", line 85, in run_code
exec(code, run_globals)
File "C:\Users\OKNCHM\AppData\Local\Programs\Python\Python37\Scripts\ulozto-downloader.exe_main
.py", line 7, in
File "c:\users\oknchm\appdata\local\programs\python\python37\lib\site-packages\uldlib\cmd.py", line 44, in run
d.download(args.url, args.parts, args.output)
File "c:\users\oknchm\appdata\local\programs\python\python37\lib\site-packages\uldlib\downloader.py", line 306, in download
self.captcha_process.start()
File "c:\users\oknchm\appdata\local\programs\python\python37\lib\multiprocessing\process.py", line 112, in start
self._popen = self._Popen(self)
File "c:\users\oknchm\appdata\local\programs\python\python37\lib\multiprocessing\context.py", line 223, in _Popen
return _default_context.get_context().Process._Popen(process_obj)
File "c:\users\oknchm\appdata\local\programs\python\python37\lib\multiprocessing\context.py", line 322, in _Popen
return Popen(process_obj)
File "c:\users\oknchm\appdata\local\programs\python\python37\lib\multiprocessing\popen_spawn_win32.py", line 89, in init
reduction.dump(process_obj, to_child)
File "c:\users\oknchm\appdata\local\programs\python\python37\lib\multiprocessing\reduction.py", line 60, in dump
ForkingPickler(file, protocol).dump(obj)
TypeError: can't pickle weakref objects
Traceback (most recent call last):
File "", line 1, in
File "c:\users\oknchm\appdata\local\programs\python\python37\lib\multiprocessing\spawn.py", line 105, in spawn_main
exitcode = _main(fd)
File "c:\users\oknchm\appdata\local\programs\python\python37\lib\multiprocessing\spawn.py", line 115, in _main
self = reduction.pickle.load(from_parent)
EOFError: Ran out of input

Chyba pri spúšťaní

Snažil som sa spustiť ulozto downloader, ale furt mám nejakú chybu. Nainštaloval som všetky knižnice.
image
Ale potom mi došlo že spúšťam niečo zle. Spustil som downloader.py a toto mi dalo:
image
Tor som si stiahol a nainštaloval na Plochu, pretože som ho nevedel dať do Program Files (ani x86), ako mám urobiť PATH? Stačí mi že python musím spúšťať cez py, lebo cez python ma to hodí do MS Storu.
Hodilo by sa tu nejaké video, návod, ako nainštalovať ulozto downloader.

UPDATE: Stiahol som si Tor priamo medzi súbory na C: a furt mám nejakú chybu.
Po preinštalovaní Pythonu pri numpy inštalácii mám chybu že nemám Visual C++ 14.0.

Chyba při stahování

root@server:~/dwl# ulozto-downloader "https://uloz.to/file/3Qxb0y5ZAJuL/"
Starting downloading for url 'https://uloz.to/file/3Qxb0y5ZAJuL/'
Getting info (filename, filesize, ...)
CAPTCHA protected download - CAPTCHA challenges will be displayed

Traceback (most recent call last):, trying to solve
  File "/usr/local/bin/ulozto-downloader", line 48, in <module>
    main()
  File "/usr/local/bin/ulozto-downloader", line 44, in main
    d.download(args.url, args.parts, args.output)
  File "/usr/local/lib/python3.8/dist-packages/ulozto_downloader/downloader.py", line 168, in download
    download_url = next(self.captcha_download_links_generator)
  File "/usr/local/lib/python3.8/dist-packages/ulozto_downloader/page.py", line 169, in captcha_download_links_generator
    captcha_answer = captcha_solve_func("https:" + captcha_image_url, print_func=print_func)
  File "/usr/local/lib/python3.8/dist-packages/ulozto_downloader/captcha.py", line 18, in tkinter_user_prompt
    root = tk.Tk()
  File "/usr/lib/python3.8/tkinter/__init__.py", line 2261, in __init__
    self.tk = _tkinter.create(screenName, baseName, className, interactive, wantobjects, useTk, sync, use)
_tkinter.TclError: no display name and no $DISPLAY environment variable
root@server:~/dwl#

Log do souboru

Ahoj, díky za super program.
Je možné upravit výstup tak aby to šlo pustit na pozadí a logovat do souboru?
Aktuálně tím vznikne naprosto nečitelný log soubor, ze kterého není poznat co už stáhnul.
díky

Timeout Error | problémy s torpy

Zdravím, začal jsem používat tuhle skvělou věc. Ale bohužel nefunguje, jak by měla.
Jakmile spustím tak běží v pořádku, ale časem se mi u partů začne objevovat čím dál častěji chyba ve tvaru Timeout error.
Přikládám obrázek pro představu. Otázka je, dá se to opravit?
Používám
Linux Ubuntu 18.04 LTS 64x
Verze Python 3.6.9
Všechny potřebné věci bych měl mít nainstalovány.

Snímek obrazovky 2021-08-02 154304

Recaptcha

Teď se objevila možnost, jak obejít recaptchu u všech souborů.
Do url stačí doplnit ?do=slowDirectDownload . Alespoň to funguje v prohlížeči.

Po novém (včerejší úpravě ze strany ulož.to) se u souborů do 50 MB recaptcha už nezobrazuje.

RFE: implement watchdog for downloading threads

There are various issues appearing with the downloads. Some of them are fatal and the specific part does not start again.
It would be good if there was some watchdog for each thread which would restart it in case something bad happen. Like if the thread is dead or is stuck.

  File "/usr/lib/python3/dist-packages/requests/api.py", line 75, in get
    return request('get', url, params=params, **kwargs)
  File "/usr/lib/python3/dist-packages/requests/api.py", line 60, in request
    return session.request(method=method, url=url, **kwargs)
  File "/usr/lib/python3/dist-packages/requests/sessions.py", line 519, in request
    prep = self.prepare_request(req)..
  File "/usr/lib/python3/dist-packages/requests/sessions.py", line 462, in prepare_request
    hooks=merge_hooks(request.hooks, self.hooks),
  File "/usr/lib/python3/dist-packages/requests/models.py", line 313, in prepare
    self.prepare_url(url, params)HA...
  File "/usr/lib/python3/dist-packages/requests/models.py", line 387, in prepare_url
    raise MissingSchema(error)PTCHA...
requests.exceptions.MissingSchema: Invalid URL '/blocked': No schema supplied. Perhaps you meant http:///blocked?

Kontrola / v nazvu souboru

Program nekontroluje pritomnost lomitka v nazvu souboru na Uloz.to . Stazeni casti souboru pak havaruje protoze se snazi ukladat do neexistujiciho adresare (cast nazvu je povazovana za adresar)

Vyhledávání na Ulož.to

Mám napsané vyhledávání na Ulož.to v NodeJS, proto jsem přidal podporu trackovaných linků, aby se linky z mého vyhledávače daly rovnou používat v ulozto_downloader. Získat netrackované linky znamená pro každý link z vyhledávání provést jeden dotaz na Ulož.to.

Trackované linky vypadají takto:
https://uloz.to/download-tracking/50bb81ef93310e4266e9b2b85199c595a9b8a576a8f3e5ad4c8f3b8dc377107eada50b3d873de2b6e8fec7a9bb2306f6

Budu to dávat brzy asi na Github a mohly by ty projekty spolupracovat.

Nelze spustit

Dobrý den,

Po přeinstalaci systému a znovu nainstalování ulozto downloaderu mi nejde spustit, vždy se mi na chílí ukáže nápis opening new Tor Circuit a pak vyhodí tento výstup:

https://pastebin.com/Td2KYGNS

Nejspíše se mi špatně nainstaloval nějaký modul pythonu, nenapadá Vás někoho co by mohl být problém?

Distro: Arch

Skript přestal fungovat

Ahoj, asi dva dny zpět nejspíš došlo k nějaké změně na uloz.to, která to způsobila. Nefunguje ani vžum. Testováno na windows a linuxu.

Název binárního programu

Nebylo by dobré tomu dát nějaký rozumný název?

Aby se například binárka jmenovala (download):
dulozto

Pro svůj projekt vyhledávače bych zvolil například (search, find):
sulozto (moc se mi nelíbí to su na začátku)
fulozto

stahovanie cez tor, nielen ziskavanie liniek

Cau,

toto je skor len napad (neviem ci uskutocnitelny),
co keby cele stahovanie casti sa dalo vynutit cez tor? (for obvious reasons) nielen ziskavanie urliek.

porusuje sa tym nejake pravidlo toru? bude to pekelne pomale? sam neviem.

inak software je skvely, diky!!!

da sa niekam prispiet na pivko?

Provoz na serveru bez X

Zdravím, snažím se tento script rozběhnout na jednom serveru, který nemá DE ani X server, pouze konzolové prostředí. Nevím nakolik to nazvat chybou nebo spíš zkrátka vlastností scriptu, že nebyl pro tato prostředí napsán, nicméně nešlo by ošetřit čtení captchy jiným způsobem? (např v ASCII artu / ručním zadáváním). Děkuji za úvahu.

Starting downloading for url 'https://uloz.to/file/qBqmjuDxQqju/policejni-akademie-1-93m-1984-usa-czdabing-hd-1080p-i-avi'
Getting info (filename, filesize, ...)
CAPTCHA protected download - CAPTCHA challenges will be displayed
CAPTCHA image challenge...
Traceback (most recent call last):
File "ulozto_downloader.py", line 423, in
download(args.url, args.parts, args.output)
File "ulozto_downloader.py", line 318, in download
download_url = get_captcha_download_link(url)
File "ulozto_downloader.py", line 109, in get_captcha_download_link
captcha_answer = get_captcha_user_input("http:" + captcha_data['new_captcha_data']['image'])
File "ulozto_downloader.py", line 182, in get_captcha_user_input
root = tk.Tk()
File "/usr/lib64/python3.6/tkinter/init.py", line 2023, in init
self.tk = _tkinter.create(screenName, baseName, className, interactive, wantobjects, useTk, sync, use)
_tkinter.TclError: no display name and no $DISPLAY environment variable

ReCaptcha je vždy neplatná

Ahoj, v posledních dnech pravděpodobně přestala fungovat práce s recaptchou, resp. všechny zadané recaptchy jsou vyhodnoceny jako chybné.

Chyba na velkých souborech

Ahoj,

při stahování většího souboru spadne na KeyError: content-length, celý výpis zde:

(venv) d:\>python ulozto_downloader.py --parts 14 "https://uloz.to/file/VdEer7yz/spirited-away-2001-dvdrip-tri-audio-eng-jap-fre-ac3-5-1-dxo-avi"
Starting downloading for url 'https://uloz.to/file/VdEer7yz/spirited-away-2001-dvdrip-tri-audio-eng-jap-fre-ac3-5-1-dxo-avi'
Getting info (filename, filesize, ...)
Traceback (most recent call last):
  File "ulozto_downloader.py", line 233, in <module>
    download(args.url, args.parts, args.output)
  File "ulozto_downloader.py", line 149, in download
    total_size = int(head.headers['Content-Length'])
  File "d:\Home\MFF\diplomka\venv\lib\site-packages\requests\structures.py", line 52, in __getitem__
    return self._store[key.lower()][1]
KeyError: 'content-length'

Testováno na linku https://uloz.to/file/VdEer7yz/spirited-away-2001-dvdrip-tri-audio-eng-jap-fre-ac3-5-1-dxo-avi na dvou počítačích, Windows a Linux, Pythony 2.7 a 3.6 - čili všude.

Nahradit mutiprocessing za asyncio

Uvažoval jsi o náhradě multiprocessing za asyncio? U aplikace, která je takhle moc závislá na I/O operacích by asyncio asi vycházelo na zdroje líp (především u mnoha stahovacích vláken najednou), nemluvě o jednodušším kódu.

Uloz.to zřemě vrátilo staré rozhraní

Vypadá to, že ?do=slowDirectDownload přestalo fungovat. Naopak zase funguje starý způsob stahování se zadáváním captcha kódu. Takže poslední změny s odstraněním captchy revertneme?

zlepseni ui

kdyz dam hodne moc casti (500 pro 10GB, 1000 pro 20gb) tak ui prestane po +-50 davat smysl a musim mit consoli otevrenou naplno.

mozna misto progresu pro kazdou cast by to slo nejak optimalizovat na ui o +- 4 radcich
se statusem jak je ted uplne dolu
1 radek celkovy progres, + celkova rychlost (tohle je vice mene nejdulezitejsi udaj)
1 radek pocet aktivnich casti, pocet skoncenych casti, pocet cekajicich, pocet startujicich

Illegal instructionge URL obtained, trying to solve

Ahojte,

Vyhadzuje tuto chybu pokial je zapnuty --auto-captcha
Illegal instructionge URL obtained, trying to solve

Bez auto-captcha vyhodie okienko s captcha na rucne prepisania a stahovanie sa rozbehne. Neviete co to moze byt?

Dakujem.

Klíčové vlastnosti

Nevyžaduje opisování CAPTCHA kódů

Co přesně je tím myšleno, že je skript dekóduje automaticky, nebo něco jiného?

Licence

Pod jakou licencí je tento software? Rád udělám PR např na MIT licenci

Output file created in current dir, not in --output <dir>

Dnes jsem poprve vyzkousel, vse super, jen takova drobnost - jednotlive casti jsou vytvareny korektne dle parametru --output ( kontroloval jsem behem stahovani), finalni soubor se ale objevi v aktualnim adresari.

Priklad:
$ ./ulozto_downloader.py --output /links/tmp/ https://uloz.to/file/vIluYcpO4uDD/dira-el-hoyo-2019-cz-titulky-mkv

File: Díra (El hoyo,2019)Cz.Titulky.mkv
URL: https://uloz.to/file/vIluYcpO4uDD/dira-el-hoyo-2019-cz-titulky-mkv
Size: 5173.91MB
Download type: CAPTCHA protected
Parts: 10 x 517.39MB

[Part 1] Successfully downloaded 517.39MB in 0:49:06
[Part 2] Successfully downloaded 517.39MB in 0:49:05
[Part 3] Successfully downloaded 517.39MB in 0:49:10
[Part 4] Successfully downloaded 517.39MB in 0:49:08
[Part 5] Successfully downloaded 517.39MB in 0:49:06
[Part 6] Successfully downloaded 517.39MB in 0:49:04
[Part 7] Successfully downloaded 517.39MB in 0:49:06
[Part 8] Successfully downloaded 517.39MB in 0:49:05
[Part 9] Successfully downloaded 517.39MB in 0:49:06
[Part 10] Successfully downloaded 517.39MB in 0:49:07

All downloads finished, merging files...
All files merged, output file is 'Díra (El hoyo,2019)Cz.Titulky.mkv'

$ ls -la /links/tmp/Díra\ (El\ hoyo,2019)Cz.Titulky.mkv
ls: cannot access '/links/tmp/Díra (El hoyo,2019)Cz.Titulky.mkv': No such file or directory

$ ls Díra\ (El\ hoyo,2019)Cz.Titulky.mkv
'Díra (El hoyo,2019)Cz.Titulky.mkv'

ulozto-captcha-breaker

Zdravím,

díky skvělé práci Jana Paláška máme k dispozici vytrénovaný Tensorflow model, který louská Ulož.to captchy raz dva.
https://github.com/JanPalasek/ulozto-captcha-breaker

Pokorný to do svého Vžumu nedávno integroval a funguje to krásně. Zkusil jsem vytvořit hrubý nástřel integrace do ulozto_downloader a funguje to. Stahování filmu z Ulož.to na 101 instancí je nyní možné i na macOS ( Ač se u toho i5 T480 docela zapotil ) :D Otestoval jsem to také na headless Ubuntu 20.04 kontejneru a řeší to #19 Nevýhoda je, že se musí nainstalovat docela objemný Tensorflow package a nefunguje to bez AVX instrukcí. Pokouším se zkompilovat custom verzi s podporou Core2 nebo alespoň Nehalemu, ale moc se mi to nedaří.

Exception: Unknown document has been received

Starting downloading for url 'https://ulozto.cz/file/T0DEh8abg70U/dluh-2010-mkv'                                                                              
Getting info (filename, filesize, ...)                                                                                                                        
CAPTCHA protected download - CAPTCHA challenges will be displayed                                                                                             
                                                                                                                                                              
ERROR:root:[ignored]ing new Tor circuit (may take some time)...                                                                                               
Traceback (most recent call last):                                                                                                                            
  File "/home/sopos/.local/lib/python3.7/site-packages/torpy/utils.py", line 78, in newfn                                                                     
    return func(*args, **kwargs)                                                                                                                              
  File "/home/sopos/.local/lib/python3.7/site-packages/torpy/consesus.py", line 157, in renew                                                                
    raise Exception('Unknown document has been received')
Exception: Unknown document has been received
ERROR:root:[ignored]
Traceback (most recent call last):
  File "/home/sopos/.local/lib/python3.7/site-packages/torpy/utils.py", line 78, in newfn                                                                    
    return func(*args, **kwargs)
  File "/home/sopos/.local/lib/python3.7/site-packages/torpy/consesus.py", line 157, in renew                                                                
    raise Exception('Unknown document has been received')
Exception: Unknown document has been received
ERROR:root:[ignored]
Traceback (most recent call last):
  File "/home/sopos/.local/lib/python3.7/site-packages/torpy/utils.py", line 78, in newfn
    return func(*args, **kwargs)
  File "/home/sopos/.local/lib/python3.7/site-packages/torpy/consesus.py", line 157, in renew
    raise Exception('Unknown document has been received')
Exception: Unknown document has been received
Traceback (most recent call last):
  File "/home/sopos/bin/ul", line 48, in <module>
    main()
  File "/home/sopos/bin/ul", line 44, in main
    d.download(args.url, args.parts, args.output)
  File "/home/sopos/ulozto_downloader/ulozto_downloader/downloader.py", line 168, in download
    download_url = next(self.captcha_download_links_generator)
  File "/home/sopos/ulozto_downloader/ulozto_downloader/page.py", line 137, in captcha_download_links_generator
    with tor_requests_session(hops_count=2, retries=0) as s:
  File "/usr/lib/python3.7/contextlib.py", line 112, in __enter__
    return next(self.gen)
  File "/home/sopos/.local/lib/python3.7/site-packages/torpy/http/requests.py", line 66, in tor_requests_session
    with TorRequests(hops_count, headers, auth_data) as tr:
  File "/home/sopos/.local/lib/python3.7/site-packages/torpy/http/requests.py", line 40, in __enter__
    self._tor = TorClient(auth_data=self._auth_data)
  File "/home/sopos/.local/lib/python3.7/site-packages/torpy/client.py", line 37, in __init__
    self._consensus = consensus or TorConsensus()
  File "/home/sopos/.local/lib/python3.7/site-packages/torpy/consesus.py", line 130, in __init__
    self.renew()
  File "/home/sopos/.local/lib/python3.7/site-packages/torpy/utils.py", line 78, in newfn
    return func(*args, **kwargs)
  File "/home/sopos/.local/lib/python3.7/site-packages/torpy/consesus.py", line 157, in renew
    raise Exception('Unknown document has been received')
Exception: Unknown document has been received

Přidat setup.py

Ahoj, co takhle přidat setup.py, aby si mohli lidé nainstalovat balík přes pip a neřešit ručně závislosti apod.? Šel by pak i umístit na http://pypi.org/, ale jestli to nechceš, tak jde stále přes pip instalovat i z url (např. na githubu).

Open media vault plugin?

Ahoj, nemas v planu udelat plugin do open media vault? Mam NAS postaveny na raspberry pi 4b a na nem prave OMV a mit tam moznost stahovat z uloz.to primo z NASu by byla bomba

Nefunguje na termux

Prosím opravit, aby fungoval program na termux pro android. Našel jsem, že se chyba vyskytovala i v jiných projektech a opravili ji.

Error:
File: Stargate Empire at War rozbal a hraj.rar
URL: https://ulozto.cz/file/FUtC4j0FUdNW/stargate-empire-at-war-rozbal-a-hraj-rar
Download type: slow direct download (without CAPTCHA)
[Part 0] Waiting for direct link...
[Part 1] Waiting for direct link...Traceback (most recent call last):
File "/data/data/com.termux/files/usr/lib/python3.9/multiprocessing/synchronize.py", line 28, in
from _multiprocessing import SemLock, sem_unlink
ImportError: cannot import name 'SemLock' from '_multiprocessing' (/data/data/com.termux/files/usr/lib/python3.9/lib-dynload/_multiprocessing.cpython-39.so)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/data/data/com.termux/files/usr/bin/ulozto-downloader", line 8, in
sys.exit(run())
File "/data/data/com.termux/files/usr/lib/python3.9/site-packages/uldlib/cmd.py", line 44, in run d.download(args.url, args.parts, args.output) File "/data/data/com.termux/files/usr/lib/python3.9/site-packages/uldlib/downloader.py", line 272, in download
self.download_url_queue = mp.Queue(maxsize=0) File "/data/data/com.termux/files/usr/lib/python3.9/multiprocessing/context.py", line 103, in Queue
return Queue(maxsize, ctx=self.get_context()) File "/data/data/com.termux/files/usr/lib/python3.9/multiprocessing/queues.py", line 40, in init
from .synchronize import SEM_VALUE_MAX as maxsize
File "/data/data/com.termux/files/usr/lib/python3.9/multiprocessing/synchronize.py", line 30, in
raise ImportError("This platform lacks a functioning sem_open" +
ImportError: This platform lacks a functioning sem_open implementation, therefore, the required synchronization primitives needed will not function, see issue 3770.

Nelze stahovat soubory větší 250MB

Ahoj, zkoušel jsem stahovat filmy pomocí tohoto scriptu, ale při pokusu stažení souboru většího asi 250MB mi na Linuxu (Ubuntu 18.04) vypíše error:

kuba@JA-Linux:~/Downloads/ulozto$ ./ulozto_downloader.py --parts 15 'https://ulozto.cz/file/GKc25cVhxWQV/the-100-s06e13-the-blood-of-sanctum-720p-cz-titulky-mkv' Starting downloading for url 'https://ulozto.cz/file/GKc25cVhxWQV/the-100-s06e13-the-blood-of-sanctum-720p-cz-titulky-mkv' Getting info (filename, filesize, ...) Traceback (most recent call last): File "./ulozto_downloader.py", line 233, in <module> download(args.url, args.parts, args.output) File "./ulozto_downloader.py", line 149, in download total_size = int(head.headers['Content-Length']) File "/usr/lib/python3/dist-packages/requests/structures.py", line 54, in __getitem__ return self._store[key.lower()][1] KeyError: 'content-length'

Optimalizace dělení na části

Ahoj,

protože se nyní každé další dvě vlákna spouští až po 60 sekundách, velmi by pomohla optimalizace dělení částí. Těchto 60 sekund taky dává jakýsi interní limit, kdy má ještě cenu nastartovat další vlákno (třeba pokud bychom dle odhadu stáhli celý soubor za 50 sekund za použití 2 částí, nemá cenu jich startovat víc, i kdyby si to uživatel přál). Vypracoval jsem menší analýzu a přišel jsem na vzorec, který popisuje, jak optimálně rozdělit části.

Metoda spočívá v tom, že nechá všechna vlákna, která nastartuje, celkově stahovat stejně dlouhou dobu (tzn. všechna skončí ve stejnou chvíli). Přidělí jim tedy tak velké úseky, aby to takto vycházelo.

@setnicka Pro jednoduchou a přímočarou implementaci bude potřeba limitovat počet částí na sudá čísla (protože startujeme pokaždé dvě vlákna). To by předpokládám nebyl problém, ne? Lichá čísla by vyžadovala nějaké hackování.

Optimální dělení částí také vyžaduje znát rychlost stahování jednotlivých vláken. Toto se dle @JanPokorny liší případ od případu. Mohli bychom použít nějakou rozumnou hodnotu, třeba 200.

Přesto však by tento výpočet dělení částí měl být efektivnější než aktuální implementace, protože téměř cokoliv, co přiřadí prvním vláknům delší část pro stáhnutí je prostě lepší.

analysis.pdf

problém s --auto-captcha

Getting info (filename, filesize, ...)
CAPTCHA protected download - CAPTCHA challenges will be displayed

Starting TOR...
RuntimeError: module compiled against API version 0xe but this version of numpy is 0xd
ImportError: numpy.core.multiarray failed to import

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
File "/home/-/.local/bin/ulozto-downloader", line 8, in
sys.exit(run())
File "/home/-/.local/lib/python3.9/site-packages/uldlib/cmd.py", line 44, in run
d.download(args.url, args.parts, args.output)
File "/home/-/.local/lib/python3.9/site-packages/uldlib/downloader.py", line 237, in download
download_url = next(self.captcha_download_links_generator)
File "/home/-/.local/lib/python3.9/site-packages/uldlib/page.py", line 278, in captcha_download_links_generator
captcha_answer = captcha_solve_func(
File "/home/-/.local/lib/python3.9/site-packages/uldlib/captcha.py", line 92, in call
interpreter = tflite.Interpreter(model_content=self.model_content)
File "/home/-/.local/lib/python3.9/site-packages/tflite_runtime/interpreter.py", line 382, in init
_interpreter_wrapper.CreateWrapperFromBuffer(
SystemError: <built-in method CreateWrapperFromBuffer of PyCapsule object at 0x7f6a22d55150> returned a result with an error set
Terminating tor..
Removed tor data dir: tor_data_dir_2e92ae68-d4cd-45bc-9c29-59119c500b1f

Jméno home adresáře jsem zaměnil za "-"

[Feature] VPN as helpful tool for truely multi-threaded download

Ahoj. V jednom z bodov v README máš napísané že ulož.to je schopné providenuť len 2 linky za minútu (pochopiteľný limit). Keby sme zakomponovali VPN do tohto programu, vedeli by sme dostať neobmedzený počet linkov naraz (podľa toho na kolko tunelov by sme sa connectli) tým pádom by sme vedeli naraz sťahovať pokojne aj 20 partov čo by definitívne urýchlilo prácu.

Free VPN poskytuje napríklad Proton VPN ale neviem ako by sme ju zaimplementovali do tohto projektu. Druhá možnosť by bola Opera, ktorá poskytuje (už pekne dlhú dobu) taktiež free VPN.

Opera VPN som používal vždy keď stránka sťahovala pomaly a mala limit na 1 download per IP. Tak som si otvoril nové privátne okno pomocou ktorého som sa vedel zároveň pripojiť na další Opera VPN server a vedel som sťahovať 2 a viac súborov naraz. Ale opakujem, neviem ako by sa to dalo implementovať do tohto projektu keďže sú to closed source služby a nič o API som zatiaľ nevyhladával.

multiprocessing na win 10

File "<string>", line 1, in <module>
  File "c:\users\muniv\appdata\local\programs\python\python38-32\lib\multiprocessing\spawn.py", line 116, in spawn_main
    exitcode = _main(fd, parent_sentinel)
  File "c:\users\muniv\appdata\local\programs\python\python38-32\lib\multiprocessing\spawn.py", line 125, in _main
    prepare(preparation_data)
  File "c:\users\muniv\appdata\local\programs\python\python38-32\lib\multiprocessing\spawn.py", line 236, in prepare
    _fixup_main_from_path(data['init_main_from_path'])
  File "c:\users\muniv\appdata\local\programs\python\python38-32\lib\multiprocessing\spawn.py", line 287, in _fixup_main_from_path
    main_content = runpy.run_path(main_path,
  File "c:\users\muniv\appdata\local\programs\python\python38-32\lib\runpy.py", line 263, in run_path
    return _run_module_code(code, init_globals, run_name,
  File "c:\users\muniv\appdata\local\programs\python\python38-32\lib\runpy.py", line 96, in _run_module_code
    _run_code(code, mod_globals, init_globals,
  File "c:\users\muniv\appdata\local\programs\python\python38-32\lib\runpy.py", line 86, in _run_code
    exec(code, run_globals)
  File "C:\Users\muniv\AppData\Local\Programs\Python\Python38-32\Scripts\ulozto-downloader", line 40, in <module>
    d.download(args.url, args.parts, args.output)
  File "c:\users\muniv\appdata\local\programs\python\python38-32\lib\site-packages\ulozto_downloader\downloader.py", line 196, in download
    self.captcha_process.start()
  File "c:\users\muniv\appdata\local\programs\python\python38-32\lib\multiprocessing\process.py", line 121, in start
    self._popen = self._Popen(self)
  File "c:\users\muniv\appdata\local\programs\python\python38-32\lib\multiprocessing\context.py", line 224, in _Popen
    return _default_context.get_context().Process._Popen(process_obj)
  File "c:\users\muniv\appdata\local\programs\python\python38-32\lib\multiprocessing\context.py", line 326, in _Popen
    return Popen(process_obj)
  File "c:\users\muniv\appdata\local\programs\python\python38-32\lib\multiprocessing\popen_spawn_win32.py", line 45, in __init__
    prep_data = spawn.get_preparation_data(process_obj._name)
  File "c:\users\muniv\appdata\local\programs\python\python38-32\lib\multiprocessing\spawn.py", line 154, in get_preparation_data
    _check_not_importing_main()
  File "c:\users\muniv\appdata\local\programs\python\python38-32\lib\multiprocessing\spawn.py", line 134, in _check_not_importing_main
    raise RuntimeError('''
RuntimeError: 
        An attempt has been made to start a new process before the
        current process has finished its bootstrapping phase.

        This probably means that you are not using fork to start your
        child processes and you have forgotten to use the proper idiom
        in the main module:

            if __name__ == '__main__':
                freeze_support()
                ...

        The "freeze_support()" line can be omitted if the program
        is not going to be frozen to produce an executable.
^C

asi bude potřeba udělat něco takového, ale jsem na to slabý.. :-)

viz.: https://stackoverflow.com/questions/60266256/how-to-fix-multiprocessing-problems-in-python-in-windows10

Chyba při stahování souboru s mezerami/diakritikou

Ahoj,

na tomto souboru: https://uloz.to/file/lEgCd4ADLfCS/chinaski-ja-a-muj-kun-mp4

Testováno na Windows, Python 3.7

Program spadne po zahájení stahování a stahování failne, celý výpis zde:

(venv) d:\>python ulozto_downloader.py --parts 14 "https://uloz.to/file/lEgCd4ADLfCS/chinaski-ja-a-muj-kun-mp4"
Starting downloading for url 'https://uloz.to/file/lEgCd4ADLfCS/chinaski-ja-a-muj-kun-mp4'
Getting info (filename, filesize, ...)
'clear' is not recognized as an internal or external command,
operable program or batch file.
File: Chinaski - Já a můj kůň.mp4 | on-line video
URL: https://uloz.to/file/lEgCd4ADLfCS/chinaski-ja-a-muj-kun-mp4
Size: 3.19MB
Parts: 14 x 0.23MB
←[6;0H←[K[Part 1]       Waiting for download to start...←[7;0H←[K[Part 2]       Waiting for download to start...←[8;0H←[K[Part 3]       Waiting for download to start...←[9;0H←[K[Part 4]       Waiting
for download to start...←[10;0H←[K[Part 5]      Waiting for download to start...←[11;0H←[K[Part 6]      Waiting for download to start...←[12;0H←[K[Part 7]      Waiting for download to start...←[13;0H←
[K[Part 8]      Waiting for download to start...←[14;0H←[K[Part 9]      Waiting for download to start...←[15;0H←[K[Part 10]     Waiting for download to start...←[16;0H←[K[Part 11]     Waiting for down
load to start...←[17;0H←[K[Part 12]     Waiting for download to start...←[18;0H←[K[Part 13]     Waiting for download to start...←[19;0H←[K[Part 14]     Waiting for download to start...←[9;0H←[K[Part 4
]       Starting download←[12;0H←[K[Part 7]     Starting download←[8;0H←[K[Part 3]      Starting download←[10;0H←[K[Part 5]     Starting download←[7;0H←[K[Part 2]      Starting download←[13;0H←[K[Part
 8]     Starting download←[6;0H←[K[Part 1]      Starting download←[19;0H←[K[Part 14]    Starting download←[18;0H←[K[Part 13]    Starting downloadProcess Process-4:
Traceback (most recent call last):
  File "D:\Develop\Python-352-64\Lib\multiprocessing\process.py", line 249, in _bootstrap
    self.run()
  File "D:\Develop\Python-352-64\Lib\multiprocessing\process.py", line 93, in run
    self._target(*self._args, **self._kwargs)
  File "d:\ulozto_downloader.py", line 86, in download_part
    with open(part['filename'], 'ab') as f:
OSError: [Errno 22] Invalid argument: './Chinaski - Já a můj kůň.mp4 | on-line video.part04of14'
←[17;0H←[K[Part 12]     Starting downloadProcess Process-7:
Traceback (most recent call last):
  File "D:\Develop\Python-352-64\Lib\multiprocessing\process.py", line 249, in _bootstrap
    self.run()
  File "D:\Develop\Python-352-64\Lib\multiprocessing\process.py", line 93, in run
    self._target(*self._args, **self._kwargs)
  File "d:\ulozto_downloader.py", line 86, in download_part
    with open(part['filename'], 'ab') as f:
OSError: [Errno 22] Invalid argument: './Chinaski - Já a můj kůň.mp4 | on-line video.part07of14'
←[14;0H←[K[Part 9]      Starting download←[11;0H←[K[Part 6]     Starting download←[16;0H←[K[Part 11]    Starting downloadProcess Process-8:
Traceback (most recent call last):
  File "D:\Develop\Python-352-64\Lib\multiprocessing\process.py", line 249, in _bootstrap
    self.run()
←[15;0H←[K[Part 10]     Starting downloadProcess Process-1:
Process Process-3:
Traceback (most recent call last):
Traceback (most recent call last):
  File "D:\Develop\Python-352-64\Lib\multiprocessing\process.py", line 249, in _bootstrap
    self.run()
  File "D:\Develop\Python-352-64\Lib\multiprocessing\process.py", line 93, in run
    self._target(*self._args, **self._kwargs)
  File "d:\ulozto_downloader.py", line 86, in download_part
    with open(part['filename'], 'ab') as f:
OSError: [Errno 22] Invalid argument: './Chinaski - Já a můj kůň.mp4 | on-line video.part03of14'
  File "D:\Develop\Python-352-64\Lib\multiprocessing\process.py", line 93, in run
    self._target(*self._args, **self._kwargs)
  File "d:\ulozto_downloader.py", line 86, in download_part
    with open(part['filename'], 'ab') as f:
Process Process-2:
Traceback (most recent call last):
  File "D:\Develop\Python-352-64\Lib\multiprocessing\process.py", line 249, in _bootstrap
    self.run()
  File "D:\Develop\Python-352-64\Lib\multiprocessing\process.py", line 93, in run
    self._target(*self._args, **self._kwargs)
  File "d:\ulozto_downloader.py", line 86, in download_part
    with open(part['filename'], 'ab') as f:
OSError: [Errno 22] Invalid argument: './Chinaski - Já a můj kůň.mp4 | on-line video.part02of14'
Process Process-5:
Traceback (most recent call last):
  File "D:\Develop\Python-352-64\Lib\multiprocessing\process.py", line 249, in _bootstrap
    self.run()
  File "D:\Develop\Python-352-64\Lib\multiprocessing\process.py", line 93, in run
    self._target(*self._args, **self._kwargs)
  File "d:\ulozto_downloader.py", line 86, in download_part
    with open(part['filename'], 'ab') as f:
OSError: [Errno 22] Invalid argument: './Chinaski - Já a můj kůň.mp4 | on-line video.part05of14'
  File "D:\Develop\Python-352-64\Lib\multiprocessing\process.py", line 249, in _bootstrap
    self.run()
  File "D:\Develop\Python-352-64\Lib\multiprocessing\process.py", line 93, in run
    self._target(*self._args, **self._kwargs)
  File "d:\ulozto_downloader.py", line 86, in download_part
    with open(part['filename'], 'ab') as f:
OSError: [Errno 22] Invalid argument: './Chinaski - Já a můj kůň.mp4 | on-line video.part01of14'
Process Process-14:
Traceback (most recent call last):
  File "D:\Develop\Python-352-64\Lib\multiprocessing\process.py", line 249, in _bootstrap
    self.run()
  File "D:\Develop\Python-352-64\Lib\multiprocessing\process.py", line 93, in run
    self._target(*self._args, **self._kwargs)
  File "d:\ulozto_downloader.py", line 86, in download_part
    with open(part['filename'], 'ab') as f:
OSError: [Errno 22] Invalid argument: './Chinaski - Já a můj kůň.mp4 | on-line video.part14of14'
OSError: [Errno 22] Invalid argument: './Chinaski - Já a můj kůň.mp4 | on-line video.part08of14'
Process Process-13:
Traceback (most recent call last):
  File "D:\Develop\Python-352-64\Lib\multiprocessing\process.py", line 249, in _bootstrap
    self.run()
  File "D:\Develop\Python-352-64\Lib\multiprocessing\process.py", line 93, in run
    self._target(*self._args, **self._kwargs)
  File "d:\ulozto_downloader.py", line 86, in download_part
    with open(part['filename'], 'ab') as f:
OSError: [Errno 22] Invalid argument: './Chinaski - Já a můj kůň.mp4 | on-line video.part13of14'
Process Process-12:
Traceback (most recent call last):
  File "D:\Develop\Python-352-64\Lib\multiprocessing\process.py", line 249, in _bootstrap
    self.run()
  File "D:\Develop\Python-352-64\Lib\multiprocessing\process.py", line 93, in run
    self._target(*self._args, **self._kwargs)
  File "d:\ulozto_downloader.py", line 86, in download_part
    with open(part['filename'], 'ab') as f:
OSError: [Errno 22] Invalid argument: './Chinaski - Já a můj kůň.mp4 | on-line video.part12of14'
Process Process-11:
Traceback (most recent call last):
  File "D:\Develop\Python-352-64\Lib\multiprocessing\process.py", line 249, in _bootstrap
    self.run()
  File "D:\Develop\Python-352-64\Lib\multiprocessing\process.py", line 93, in run
    self._target(*self._args, **self._kwargs)
  File "d:\ulozto_downloader.py", line 86, in download_part
    with open(part['filename'], 'ab') as f:
OSError: [Errno 22] Invalid argument: './Chinaski - Já a můj kůň.mp4 | on-line video.part11of14'
Process Process-9:
Traceback (most recent call last):
  File "D:\Develop\Python-352-64\Lib\multiprocessing\process.py", line 249, in _bootstrap
    self.run()
  File "D:\Develop\Python-352-64\Lib\multiprocessing\process.py", line 93, in run
    self._target(*self._args, **self._kwargs)
  File "d:\ulozto_downloader.py", line 86, in download_part
    with open(part['filename'], 'ab') as f:
OSError: [Errno 22] Invalid argument: './Chinaski - Já a můj kůň.mp4 | on-line video.part09of14'
Process Process-6:
Traceback (most recent call last):
  File "D:\Develop\Python-352-64\Lib\multiprocessing\process.py", line 249, in _bootstrap
    self.run()
  File "D:\Develop\Python-352-64\Lib\multiprocessing\process.py", line 93, in run
    self._target(*self._args, **self._kwargs)
  File "d:\ulozto_downloader.py", line 86, in download_part
    with open(part['filename'], 'ab') as f:
OSError: [Errno 22] Invalid argument: './Chinaski - Já a můj kůň.mp4 | on-line video.part06of14'
Process Process-10:
Traceback (most recent call last):
  File "D:\Develop\Python-352-64\Lib\multiprocessing\process.py", line 249, in _bootstrap
    self.run()
  File "D:\Develop\Python-352-64\Lib\multiprocessing\process.py", line 93, in run
    self._target(*self._args, **self._kwargs)
  File "d:\ulozto_downloader.py", line 86, in download_part
    with open(part['filename'], 'ab') as f:
OSError: [Errno 22] Invalid argument: './Chinaski - Já a můj kůň.mp4 | on-line video.part10of14'
←[21;0HFailure of one or more downloads, exiting

Stahování model.tflite je hrozně pomalé a selže před koncem

Mám problém se stažením model.tflite, nejde stáhnout ani pomocí tvého kódu, ani normálně z prohlížeče (download se pořád zpomaluje a časem selže, přestože máme na kolejích rychlost ~100Mbit/s), nakonec se mi to povedlo wgetem. Pokud je to u ostatních podobné, bylo by asi fajn si ho někam nahrát a stahovat odjinud.
Díky

Tom

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.