32 Commits

Author SHA1 Message Date
mhdzumair 532532874c Refactor frontend API router and add sports catalog IDs; enhance API key validation 2025-04-06 17:08:20 +05:30
mhdzumair d84eafbce4 Fix null check in validation and handle exceptions in scraper 2025-02-01 17:13:11 +05:30
mhdzumair 82144e27ef Refactor private IP address checks with ipaddress module
Replaced regex-based private IP detection with a utility function `is_private_ip` using the `ipaddress` module.
2025-01-19 08:01:55 +05:30
mhdzumair d7513d131d Fix adult genre detection for stricter filtering. 2025-01-18 21:40:27 +05:30
mhdzumair 104d417729 Added strict filters to block adult genre entries.
Added strict filters to block adult genre entries during metadata validation and update messages to flag such content. Removed "adult" from genre options in the manifest to ensure compliance with filtering policies.
2025-01-18 09:11:27 +05:30
mhdzumair e2d1e07086 Add support for MDBList Catalog support 2025-01-05 22:01:13 +05:30
mhdzumair 47b164b60e Add support for "Unknown" filters in nudity and certification
This update introduces the "Unknown" option for nudity and certification filters, allowing more granular control over filtering logic. Adjustments were made to validation, database queries, and schemas to handle the new filter option seamlessly. The frontend configuration UI is also updated to reflect the changes.
2024-12-15 11:16:01 +05:30
mhdzumair 98085b7c06 Add support for request proxy with httpx & aiohttp libs
Replaced custom proxy implementation and `curl-cffi` with unified `httpx` and `aiohttp` proxy support using `requests_proxy_url` config from settings. Simplified and standardized HTTP client instantiations across various modules for improved maintainability and consistency.
2024-12-13 15:55:10 +05:30
mhdzumair 1483336adc Refactor Redis client imports and configuration
Moved Redis client setup to a new module `redis_database` and updated all references across the codebase. Also added a new configuration setting for redis_max_connections for better resource management.
2024-11-28 16:08:34 +05:30
mhdzumair 904aebd6d3 Revise is_video_file function to support more formats
Expanded the list of supported video file extensions in the `is_video_file` function to include modern streaming formats, high-efficiency containers, and legacy formats. Added docstring to provide a clear explanation of the function's purpose and usage.
2024-11-14 23:34:24 +05:30
Mohamed Zumair 467f378207 Add Configuration validations & loading widget for responsiveness (#342) 2024-11-02 19:56:02 +05:30
Mohamed Zumair ecaf7e5cf1 Added filter for only show cached stream, Redis lock for prevent concurrent live scrape, bug fixes & improvements (#325)
* cleanup lifespan vars

* Show API process time in logs

* store the cache validation of full URL for live sports event

* Add support for filter only show cached streams

* Update default configs

* properly handle prowlarr exception on MaxProcessLimitReached

* Add redis lock mechanism to prevent concurrent live scrapers from multiple instances of stremio addon installation users
2024-10-15 18:43:03 +05:30
Mohamed Zumair 52d8956034 Add ScrapeOps monitoring, Add zilean filtered endpoint, Fix Prowlarr scraping with download link & Fix PikPak login error etc (#319)
* Refactor ZileanScraper to use parallel requests for searching and filtering streams with new endpoints

* Fix DLHD scraping & enable DLHD without MediaFlow

* Switch to httpx for async HTTP requests

* Implement caching for PikPak token to reduce login error

* Refactor torrent cleanup logic

* Add inactivity monitor extension to close idle spiders

Introduced `InactivityMonitor` to automatically close spiders that remain inactive for a specified time. This extension checks activity at regular intervals and uses configurable settings for check intervals and inactivity timeouts. If no items are scraped within the timeout period, the spider is closed to free resources.

* Handle TypeError in dynamic sorting of streams

* Refactor torrent info scraper to support pre-processing.

Introduced a pre-processing function mapping to handle specific indexer requirements before parsing the HTML. Added a custom pre-processing function for "TheRARBG" to handle URL adjustments, improving modularity and readability in the `get_torrent_info` function.

* Refine error logging and fix hash key in spider

* Fix Prowlarr not stop on max process limit

* #315: Integrate ScrapeOps logging into all scrapers & spiders

Added ScrapeOps logging to Zilean, Torrentio, Prowlarr, and Prowlarr Feed scrapers to enhance request tracking and error handling. Configured ScrapeOps API key in settings and updated Pipfile/Pipfile.lock with scrapeops-python-requests and scrapeops-scrapy dependencies.

* Refactor scraper cache status handler

* verify torrent before parsing on prowlarr & prioritize magnet on badass_torrents

* Add support for provide locally hosted mediaflow proxy public address and reduce the time leg on private ip address checking

* handle RD exception cases

* do not setup scrapeops when api key is none

* Enhanced dynamic sorting of torrent streams

Revised the dynamic_sort_key function to handle different key types more efficiently with match-case. Simplified error handling and improved logging to capture sorting data in the case of exceptions.

* add missing last update date for metadata

* update domain for nowmesports
2024-10-14 05:58:23 +05:30
Mohamed Zumair 709dc25d94 Enhance TV streaming functionality with MPD DRM support, and updated spiders & Bugfixes (#298)
* Refactor stream parsing and handling for DRM and MediaFlow

* Add encryption support for mediaflow url and refactor URL validation

* Enhance LiveTV spider to support MPD and handle new player API logic

* Update TV stream validation and add DRM fields in UI

* Add mediaflow_proxy_required.mp4 exception video

* Add FlareSolverr integration to scrapy spiders

* [WIP] TamilBulb spider to scraper

* Update StreamedSpider to new API and adjust schedulers
2024-09-27 08:13:10 +05:30
Mohamed Zumair 649de9e503 Update Python version & refactror Redis client usage and streaming provider route endpoints (#277)
* Update Python version

* Refactor Redis client

* Refactor streaming routes endpoint functions
2024-09-05 06:46:07 +05:30
Mohamed Zumair bd43ee4c3f Bugfixes (#272)
* Kodi: handle connection errors in fetch data

* feat: Update scraper URLs and fix streamed.su live sport event

* use only url for cache validation in live stream validation

* Handle debrid service downtime error & tracker fetch error

* handle review
2024-08-29 10:05:39 +05:30
Mohamed Zumair 130b4c06a5 Add support for parental guides nudity filter and certification filter in user config (#244)
* Add support for parental guides nudity filter and certification filter in user config

* refactor validator according to review
2024-07-21 09:18:19 +05:30
mhdzumair 24d645a730 feat: Refactor TV stream validation and update logic for schedule function 2024-06-03 07:05:11 +05:30
mhdzumair 388a640dc4 Remove live stream redirect feature since stremio server can do the redirection 2024-05-12 19:28:49 +05:30
mhdzumair c5ad0a89f3 Add support for parent guide nudity & certificate filters & various improvments to crud functions 2024-05-06 00:16:46 +05:30
mhdzumair 7986ef9078 Refactor taskmanager middleware & wrapper function 2024-04-28 22:43:14 +05:30
mhdzumair ddc302c046 Refactor URL validation and remove image URL validation 2024-04-21 20:26:01 +05:30
mhdzumair 4195c06903 Refactor TV stream parsing and add caching for M3U8 URL validation 2024-04-01 16:45:54 +05:30
mhdzumair 40e71a6c7f Add support for M3U8 URL validation for liveness before returning 2024-03-31 01:46:46 +05:30
mhdzumair af3da0731d Add support for m3u playlist import option in scraper manager 2024-03-26 14:21:03 +05:30
mhdzumair 0e002dd1f9 Add TV metadata functionality from scraper manager 2024-03-24 07:42:01 +05:30
mhdzumair f04d537ee2 Add tamilultra scrapy & add support for trigger scrapers & consolidate apscheduler, background worker & bugfixes 2024-03-17 17:41:03 +05:30
mhdzumair 1c6b8cb491 Refactor URL validation and add asynchronous functionality 2024-03-10 22:47:25 +05:30
mhdzumair ac569b2b4b Merge branch 'develop' of github.com:mhdzumair/MediaFusion into pr/ragmehos/95 2024-01-30 23:52:03 +05:30
mhdzumair ac2ab7d218 Add support for scraping series from torrentio 2024-01-30 13:04:35 +05:30
Rag 91fbb46d7d Prowlarr integration 2024-01-29 13:08:38 -05:00
mhdzumair ac52a930c3 Add support for Live TV & fix several issues 2023-11-13 21:35:23 +05:30