Skip to main content

Unofficial Python API/SDK for fzmovies.net

Project description

fzmovies-api

Python version Python Test License PyPi Latest release release date Black Python-publish Downloads Downloads

Unofficial Python API/SDK for fzmovies.net

from fzmovies_api import Auto

Auto(
     query="Fast and Furious 5",
     quality="720p",
  ).run()

# Will show download progressbar
"""
Fast_and_Furious_5_BluRay v2_720p.mkv
805 MB ██████████████████                            42%|
"""

Installation

$ pip install fzmovies-api[all]

Alternatively, you can download binaries for your system from here.

Usage

Developers

# Search by Starcast

from fzmovies_api import Search

search = Search(
    query="Jason Statham",
    searchby="Starcast"
)

print(
    search.results
)

# Output
"""
<SearchResults movies=[<MovieInSearch title="Fast and Furious Presents - Hobbs and Shaw",year=2019> | <MovieInSearch title="Fast X",year=2023> | <MovieInSearch title="The Fate of the Furious [Part 8]",year=2017> | <MovieInSearch title="Mechanic Resurrection",year=2016> | <MovieInSearch title="The Meg",year=2018> | <MovieInSearch title="Wrath of Man",year=2021> | <MovieInSearch title="The Beekeeper",year=2024> | <MovieInSearch title="Operation Fortune Ruse de guerre",year=2023> | <MovieInSearch title="The Expendables 2",year=2012> | <MovieInSearch title="The Expendables 3",year=2014> | <MovieInSearch title="Meg 2 The Trench",year=2023> | <MovieInSearch title="Homefront",year=2013> | <MovieInSearch title="Parker",year=2013> | <MovieInSearch title="Safe",year=2012> | <MovieInSearch title="The Expendables 1",year=2010> | <MovieInSearch title="The Transporter 2002",year=2002> | <MovieInSearch title="Transporter 3 2008",year=2008> | <MovieInSearch title="Death Race",year=2008> | <MovieInSearch title="Expend4bles",year=2023> | <MovieInSearch title="Transporter 2 2005",year=2005>]>
"""

Perform Search Using Filters

from fzmovies_api import Search
from fzmovies_api.filters import IMDBTop250Filter

search = Search(
    query = IMDBTop250Filter()
)

print(
    search.results
)


#Output
"""
<SearchResults movies=[<MovieInSearch title="Schindlers List",year=1993> | <MovieInSearch title="The Godfather - Part 1",year=1972> | <MovieInSearch title="Pulp Fiction",year=1994> | <MovieInSearch title="12 Angry Men",year=1957> | <MovieInSearch title="Terminator 2 Judgment Day",year=1991> | <MovieInSearch title="The Avengers",year=2012> | <MovieInSearch title="The Cold Light of Day",year=2012> | <MovieInSearch title="The Good the Bad and the Ugly",year=1966> | <MovieInSearch title="The Shawshank Redemption",year=1994> | <MovieInSearch title="Raging Bull",year=1980> | <MovieInSearch title="The Lion King",year=1994> | <MovieInSearch title="New Gladiators",year=2002> | <MovieInSearch title="The Dictator",year=2012> | <MovieInSearch title="The Matrix",year=1999> | <MovieInSearch title="Heat",year=1995> | <MovieInSearch title="2001 A Space Odyssey",year=1968> | <MovieInSearch title="The Silence of the Lambs",year=1991> | <MovieInSearch title="The Departed",year=2006> | <MovieInSearch title="Braveheart",year=1995> | <MovieInSearch title="Up",year=2009>]>
"""

Fetch All Search Results

from fzmovies_api import Search
from fzmovies_api.filters import IMDBTop250Filter

search = Search(
    query = IMDBTop250Filter()
)

print(
    search.all_results
)
Limit movies and stream results
from fzmovies_api import Search
from fzmovies_api.filters import MovieGenreFilter

search = Search(
    query = MovieGenreFilter(
        "Action"
    )
)

for result in search.get_all_results(
    limit=40,
    stream=True
    ):

    print(
        result, end='\n\n'
    )

Download Movies

from fzmovies_api import Search, Navigate, DownloadLinks, Download
from fzmovies_api.filters import OscarsFilter

search = Search(
    query=OscarsFilter(
        category="Best Picture"
    )
)

for movie in search.all_results.movies:

    # Navigate to the specific movie-page
    movie_page = Navigate(movie).results

    # Go to page containing download link
    download_link_page = DownloadLinks(
        movie_page.files[1]
    )

    download_link_metadata = download_link_page.results

    # Follow the link to download the movie
    download_movie = Download(
        download_link_metadata.links[0]
    )

    print(
        "Downloading : '" + movie.title + "' of size " + download_link_metadata.size
    )

    # Dowload the movie using save method
    saved_to = download_movie.save(
        download_link_metadata.filename,
        # To silence progressbar & any other stdout:
        # progress_bar = False,
        # quiet = True
    )

    print(
        saved_to
    )
Using Auto
from fzmovies_api import Auto
from fzmovies_api.filters import RecentlyReleasedFilter

start = Auto(
    query=RecentlyReleasedFilter(
        category="Hollywood"
    )
)

start.run()

CLI

  • Basic case yet very handy

    $ python -m fzmovies_api download <QUERY>
    # e.g python -m fzmovies_api download "Thor - Love and Thunder"
    

[!TIP] Shorthand for python -m fzmovies_api is fzmovies

$ fzmovies download --help
Usage: python -m fzmovies_api download [OPTIONS] QUERY

  Perform search and download first movie in the search results

Options:
  -s, --searchby [Name|Director|Starcast]
                                  Query search-by filter - Name
  -c, --category [All|Bollywood|Hollywood|DHollywood]
                                  Query movie category - All
  -q, --quality [480p|720p]       Movie file download quality - 720p
  -o, --output TEXT               Filename for saving the movie contents to
  -d, --directory TEXT            Directory for saving the movie contents -
                                  pwd
  -z, --chunk-size INTEGER        Chunk_size for downloading files in KB - 512
  -r, --resume                    Resume downloading incomplete files - False
  -q, --quiet                     Not to stdout anything - False
  -y, --yes                       Okay to all prompts - False
  --help                          Show this message and exit.

[!NOTE] fzmovies_api provides a lot more than what you've just gone through here. Documenting isn't my thing, but I will try to update it as time goes by. Additionally, I cannot document this any better than the code itself; therefore, consider going through it.

Disclaimer

This project is not affiliated with or endorsed by fzmovies.net or its owners. The API may change without notice, and this project does not guarantee compatibility with all future updates. The developers of this project are not responsible for any damages or losses resulting from the use of this API. This project is provided AS IS, without warranty of any kind, express or implied.

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

fzmovies_api-0.1.4.tar.gz (34.8 kB view details)

Uploaded Source

File details

Details for the file fzmovies_api-0.1.4.tar.gz.

File metadata

  • Download URL: fzmovies_api-0.1.4.tar.gz
  • Upload date:
  • Size: 34.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.13.0

File hashes

Hashes for fzmovies_api-0.1.4.tar.gz
Algorithm Hash digest
SHA256 68c7a459f1e2da3674657baa9dfb079e9226606bf536d650a18c691a889f480f
MD5 8cb081b12569c80adb79fa742e9900a5
BLAKE2b-256 ee60e60e889db7dce1559c14ee17f0ee900397b521f20028f136bcd421ea810e

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page