Skip to main content

Scrapes popular streaming sites and compiles m3u/xml files for viewing.

This project has been archived.

The maintainers of this project have marked this project as archived. No new releases are expected.

Project description

Sportyfin

For Educational Purposes Only

Description

Stream sports events straight from your Jellyfin server. Sportyfin allows users to scrape for live streamed events and watch straight from Jellyfin. Sportyfin also generates meta-data that is used in Jellyfin to provide a great viewing experience.

Currently, Sportyfin supports NBA, NHL, NFL and Premier League livestreams, but we plan to support other leagues in the future.

Installation

Pip

To install Sportyfin with pip, follow the steps bellow:

pip install sportyfin --no-binary=sportyfin

Docker

To install Sportyfin with Docker, follow the steps bellow:

git clone https://github.com/axelmierczuk/sportyfin.git
cd sportyfin
docker build --tag sportyfin .
docker run -v <Path Where You Want Output>:/sportyfin/output sportyfin 

# For example: docker run -v ~/Desktop:/sportyfin/output sportyfin 
# You can edit the paramaters that sportyfin runs with from the Dockerfile

OR you may pull the container with the following:

docker pull sportyfin/sportyfin:latest 
docker run -v <Path Where You Want Output>:/sportyfin/output sportyfin/sportyfin:latest

# You CANNOT edit the paramaters that sportyfin runs with when pulling the image

Usage

We highly recommend running Sportyfin in combination with tmux, or something similar.

Example usage:

python3 -m sportyfin <arguments>

Start the sportyfin server as follows:

# -nba specifies finding streams for the NBA
# -s allows sportyfin to use Selenium to scrape
# -v enables verbose mode
# -o enables selecting output location

python3 -m sportyfin -nba -s -v -o ~/Desktop
# -vv specifies silent mode (no output will be produced)
# -a specifies all leagues supported by sportyfin

python3 -m sportyfin -a -vv

See the full list of arguments here.

Once you have run the program, make sure to link to the .m3u's in the Jellyfin dashboard:

Dashboard > Live TV > Tuner Devices (+) > Tuner Type (M3U Tuner) > File or URL (enter path)

'Dashboard'

'Dashboard'

Additionally, make sure to change the "Refresh Guide" setting under:

Dashboard > Scheduled Tasks > Live TV > Refresh Guide > Task Triggers

'Dashboard'

'Dashboard'

Once the path has been defined and the settings have been updated, you can check out your streams under:

Home > Live TV > Channels (at the top)

'Dashboard'

Documentation

Find all the documentation here.

Future Improvement

Add server functionality, aka, ability to access streams (m3u files) from HTTP server.

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

sportyfin-1.0.7.tar.gz (14.6 kB view details)

Uploaded Source

File details

Details for the file sportyfin-1.0.7.tar.gz.

File metadata

  • Download URL: sportyfin-1.0.7.tar.gz
  • Upload date:
  • Size: 14.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7

File hashes

Hashes for sportyfin-1.0.7.tar.gz
Algorithm Hash digest
SHA256 0b6fb45f3139cca6a3ee16ac9ace137073cc8458f54dd1a1e8a115cfea20488d
MD5 f25b327e47c9220fa98ef2d060c018f6
BLAKE2b-256 ef281676349c1b0eb5ad187020dde191730907aedf1af91a562cde29d2ac5cf0

See more details on using hashes here.

Supported by

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