jurakin / kukajto-downloader

This program can find the direct url of a video or subtitle file from film.kukaj.io or serial.kukaj.io, which can be used for downloading the video or opening the vlc network stream.
MIT License
4 stars 1 forks source link
KukajTo Downloader

KukajTo Downloader - get a direct url to a video or subtitle file

This program can find the direct url of a video or subtitle file from kukaj.to, that can be opened in the VLC media player.

Installation

How to use

Supported sources

Kukajto is currently using following source:

Shortcut Domain Support Play* Format
TAP streamtape.com mp4
MIX mixdrop.co mp4
MON filemoon.sx m3u8
DOD - - - -
NET - - - -

*Can be analyzed without playing video first.

Preview

preview

Using in code

You can use the library in your code:

from selenium import webdriver

from kukajto_downloader import Kukaj

driver = webdriver.Chrome()

# mixdrop source, english, czech subtitles
driver.get("https://film.kukaj.io/matrix/1?subs=0&lng=EN")

# analyze kukaj site
result = Kukaj(driver).get()

# prints the url of video and subtitles
print(result.video)
print(result.subtitles)

driver.quit()

Custom scraper can be created too. This is an example how MixdropScraper is implemented:

from selenium import webdriver

from src.kukajto_downloader import Kukaj
from src.kukajto_downloader import Scraper, UnsupportedStructureError

driver = webdriver.Chrome()

class MixdropScraper:
    """
    Scraper class must have following methods:
        __init__
            Arguments:
                driver - selenium webdriver instance
        get
            Method that extracts url from the source

            Arguments:
                iframe - selenium iframe object of source

            Returns:
                url - An url that will be displayed

    """
    def __init__(self, driver) -> None:
        self.driver = driver

    def get(self) -> str: # required method
        url = self.driver.execute_script("return MDCore.wurl")

        if not url:
            raise UnsupportedStructureError

        return url

# mixdrop source, english, czech subtitles
driver.get("https://film.kukaj.io/matrix/3?subs=0&lng=EN")

# create scraper instance
scraper = Scraper(driver)

# attach new scraper
scraper.attach("mixdrop.co", MixdropScraper)

# analyze kukaj site
result = Kukaj(driver).get(scraper)

# prints the url of video and subtitles
print(result.video)

Disclaimer

FOR EDUCATIONAL AND INFORMATIONAL PURPOSES ONLY.

The information provided in or through this website is for educational and informational purposes only and solely as a self-help tool for your own use.

THIS SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. YOU MAY USE THIS SOFTWARE AT YOUR OWN RISK. THE USE IS COMPLETE RESPONSIBILITY OF THE END-USER. THE DEVELOPERS ASSUME NO LIABILITY AND ARE NOT RESPONSIBLE FOR ANY MISUSE OR DAMAGE CAUSED BY THIS PROGRAM.

License

This program is released under MIT License.

Credits

In my project I used following icons from other sources: