Skip to main content

Uloz.to quick multiple sessions downloader.

Project description

Ulož.to downloader

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í)
  • Nyní stahuje přímo do jednoho souboru, místo dělení na části a potom spojování
  • 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

Nejjednodušší je využít verzi uveřejněnou na PyPi:

$ pip3 install --upgrade ulozto-downloader

Toto instaluje všechny dependence vyjma TensorFlow Lite pro automatické louskání CAPTCHA kódů (protože repozitář PyPI zakazuje přímé URL dependence).

Instalace TORu

Program vyžaduje spustitelný tor, protože používá stem a očekává ho v $PATH.

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

Na stránce TensorFlow Lite si v tabulce vyberte správnou verzi podle vašeho systému a verze Pythonu (zjistíte zavoláním python3 -V), zkopírujte URL a instalujte pomocí:

$ pip3 install <URL>
# Například tedy pro Python 3.8 na x86-64 Linuxu:
$ pip3 install https://github.com/google-coral/pycoral/releases/download/release-frogfish/tflite_runtime-2.5.0-cp38-cp38-linux_x86_64.whl

Na linuxu je mozné pro novější python 3.9.x zkompilovat tflite_runtime-2.6.0-cp39-cp39-linux_x86_64.whl a pak nainstalovat pomocí:

pip install tflite_runtime-2.6.0-cp39-cp39-linux_x86_64.whl

Tento soubor pro python 3.9, linux x86-64 a GLIBC_2.33 je nyní také součástí repozitáře. Pokud potřebujete starší verzi GLIBC (například pro Debian), tak můžete zkusit následovat postup v https://github.com/google-coral/pycoral/issues/6

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

Potřebujete na systému instalovaný Tkinter (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).

Použití

Pro volbu automatického čtení CAPTCHA kódů slouží přepínač --auto-captcha, pro volbu počtu částí slouží přepínač --parts N.

$ ulozto-downloader --auto-captcha --parts 15 "https://ulozto.cz/file/TKvQVDFBEhtL/debian-9-6-0-amd64-netinst-iso"

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 jednou za minutu louskne další dva stahovací linky a postupně navyšuje počet najednou stahovaných částí).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ulozto-downloader-2.6.0.tar.gz (13.2 MB view hashes)

Uploaded source

Built Distribution

ulozto_downloader-2.6.0-py3-none-any.whl (13.2 MB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page