A way to scrape sports streams for use with Jellyfin.

Related tags

Web Crawlingsportyfin
Overview

Sportyfin

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

To install Sportyfin with your running instance of Jellyfin, follow the steps bellow:

pip install sportyfin --no-binary=sportyfin

To uninstall the program:

pip uninstall sportyfin

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

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)

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

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

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)

Documentation

Find all the documentation here.

Future Improvement

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

You might also like...
Scrape and display grades onto the console

WebScrapeGrades About The Project This Project is a personal project where I learned how to webscrape using python requests. Being able to get request

Scrape puzzle scrambles from csTimer.net
Scrape puzzle scrambles from csTimer.net

Scroodle Selenium script to scrape scrambles from csTimer.net csTimer runs locally in your browser, so this doesn't strain the servers any more than i

A simple flask application to scrape gogoanime website.

gogoanime-api-flask A simple flask application to scrape gogoanime website. Used for demo and learning purposes only. How to use the API The base api

CRI Scrape is a tool for get general info about Italian Red Cross in GAIA Platform
CRI Scrape is a tool for get general info about Italian Red Cross in GAIA Platform

CRI Scrape CRI Scrape is a tool for get general info about Italian Red Cross in GAIA Platform Disclaimer This code is only for educational purpose. So

Scrape plants scientific name information from Agroforestry Species Switchboard 2.0.

Agroforestry Species Switchboard 2.0 Scraper Scrape plants scientific name information from Species Switchboard 2.0. Requirements python = 3.10 (you

API which uses discord to scrape NameMC searches/droptime/dropping status of minecraft names

NameMC Scrape API This is an api to scrape NameMC using message previews generated by discord. NameMC makes it a pain to scrape their website, but som

This is python to scrape overview and reviews of companies from Glassdoor.

Data Scraping for Glassdoor This is python to scrape overview and reviews of companies from Glassdoor. Please use it carefully and follow the Terms of

A Python web scraper to scrape latest posts from official Coinbase's Blog.
A Python web scraper to scrape latest posts from official Coinbase's Blog.

Coinbase Blog Scraper A Python web scraper to scrape latest posts from official Coinbase's Blog. IDEA It scrapes up latest blog posts from https://blo

A package designed to scrape data from Yahoo Finance.

yahoostock A package designed to scrape data from Yahoo Finance. Installation The most simple installation method is through PIP. pip install yahoosto

Comments
  • Very interesting! How to expand for different  European tournaments?

    Very interesting! How to expand for different European tournaments?

    How can we expand to other football tournaments like Champions League, Europa League and Seria A, La Liga, Bundesliga, Ligue 1?

    It seems to me that from the page you get the streams you can also get the other tournaments so it should be pretty easy right?

    opened by rdibella 1
  • Error occurred bypassing bitly

    Error occurred bypassing bitly

    I have this error when trying to generate the stream then i have another (HTTPSConnectionPool) that crashes the docker container I understand that this is no longer maintained but thought i would give it a shot

    image
    opened by neek0la 0
  • "list index out of range" when searching for stream links

    Sometimes when searching for stream links, the program completely fails and says "list index out of range". Im using the python version and I've noticed this happens quite often and I assume it happens when it cannot find any streams.

    opened by bbdcmf 1
  • Specify file

    Specify file "location" in addition to "destination"

    Hello!

    Might be a bit of an edge case/weird setup, and if its not workable -- no worries!

    All of my media is stored on a linux server, however my Jellyfin instance runs on a windows machine (as it has more computing oomf). Ideally, I would like to run Sportyfin on my linux box as a Cron job along with my other self-hosted projects. I have my linux box mounted as a network drive in Windows -- so Jellyfin can access the files on the linux server.

    The issue I run into, is that the xmltv file indicates the images are stored where the script put the files (in linux) - which isn't the same file path in Windows.

    What would be ideal, is if I could specify to the script where the files can be "located" by Jellyfin - which is different than where the script's output/destination is specified.

    e.g. output script files to /media/sportyfin but the created xmltv files say they are actually located at Z:\sportyfin python3 -m sportyfin -a -s -v -o /media/sportyfin -l z:\sportyfin

    Cheers, and thanks for your work on this project!

    opened by Albuca 2
Releases(1.0.7-stable)
Owner
axelmierczuk
axelmierczuk
Using Python and Pushshift.io to Track stocks on the WallStreetBets subreddit

wallstreetbets-tracker Using Python and Pushshift.io to Track stocks on the WallStreetBets subreddit.

91 Dec 08, 2022
Google Developer Profile Badge Scraper

Google Developer Profile Badge Scraper GDev Profile Badge Scraper is a Google Developer Profile Web Scraper which scrapes for specific badges in a use

Siddhant Lad 7 Jan 10, 2022
Create crawler get some new products with maximum discount in banimode website

crawler-banimode create crawler and get some new products with maximum discount in banimode website. این پروژه کوچک جهت یادگیری و کار با ابزار سلنیوم

nourollah rezaei 2 Feb 17, 2022
This is a module that I had created along with my friend. It's a basic web scraping module

QuickInfo PYPI link : https://pypi.org/project/quickinfo/ This is the library that you've all been searching for, it's built for developers and allows

OneBit 2 Dec 13, 2021
Python scraper to check for earlier appointments in Clalit Health Services

clalit-appt-checker Python scraper to check for earlier appointments in Clalit Health Services Some background If you ever needed to schedule a doctor

Dekel 16 Sep 17, 2022
Binance Smart Chain Contract Scraper + Contract Evaluator

Pulls Binance Smart Chain feed of newly-verified contracts every 30 seconds, then checks their contract code for links to socials.Returns only those with socials information included, and then submit

14 Dec 09, 2022
Fundamentus scrapy

Fundamentus_scrapy Baixa informacões que os outros scrapys do fundamentus não realizam. Para iniciar (python main.py), sera criado um arquivo chamado

Guilherme Silva Uchoa 1 Oct 24, 2021
A training task for web scraping using python multithreading and a real-time-updated list of available proxy servers.

Parallel web scraping The project is a training task for web scraping using python multithreading and a real-time-updated list of available proxy serv

Kushal Shingote 1 Feb 10, 2022
联通手机营业厅自动做任务、签到、领流量、领积分等。

联通手机营业厅自动完成每日任务,领流量、签到获取积分等,月底流量不发愁。 功能 沃之树领流量、浇水(12M日流量) 每日签到(1积分+翻倍4积分+第七天1G流量日包) 天天抽奖,每天三次免费机会(随机奖励) 游戏中心每日打卡(连续打卡,积分递增至最高

2k May 06, 2021
This tool crawls a list of websites and download all PDF and office documents

This tool crawls a list of websites and download all PDF and office documents. Then it analyses the PDF documents and tries to detect accessibility issues.

AccessibilityLU 7 Sep 30, 2022
抖音批量下载用户所有无水印视频

Douyincrawler 抖音批量下载用户所有无水印视频 Run 安装python3, 安装依赖

28 Dec 08, 2022
simple http & https proxy scraper and checker

simple http & https proxy scraper and checker

Neospace 11 Nov 15, 2021
A Python Oriented tool to Scrap WhatsApp Group Link using Google Dork it Scraps Whatsapp Group Links From Google Results And Gives Working Links.

WaGpScraper A Python Oriented tool to Scrap WhatsApp Group Link using Google Dork it Scraps Whatsapp Group Links From Google Results And Gives Working

Muhammed Rizad 27 Dec 18, 2022
Universal Reddit Scraper - A comprehensive Reddit scraping command-line tool written in Python.

Universal Reddit Scraper - A comprehensive Reddit scraping command-line tool written in Python.

Joseph Lai 543 Jan 03, 2023
Scrap the 42 Intranet's elearning videos in a single click

42intra_scraper Scrap the 42 Intranet's elearning videos in a single click. Why you would want to use it ? Adjust speed at your convenience. (The intr

Noufel 5 Oct 27, 2022
Scraping and visualising India's real-time COVID-19 data from the MOHFW dataset.

COVID19-WEB-SCRAPER Open Source Tech Lab - Project [SEMESTER IV] OSTL Assignments OSTL Assignments - 1 OSTL Assignments - 2 Project COVID19 India Data

AMEY THAKUR 8 Apr 28, 2022
Transistor, a Python web scraping framework for intelligent use cases.

Web data collection and storage for intelligent use cases. transistor About The web is full of data. Transistor is a web scraping framework for collec

BOM Quote Manufacturing 212 Nov 05, 2022
Twitter Eye is a Twitter Information Gathering Tool With Twitter Eye

Twitter Eye is a Twitter Information Gathering Tool With Twitter Eye, you can search with various keywords and usernames on Twitter.

Jolanda de Koff 19 Dec 12, 2022
Simple tool to scrape and download cross country ski timings and results from live.skidor.com

LiveSkidorDownload Simple tool to scrape and download cross country ski timings and results from live.skidor.com Usage: Put the python file in a dedic

0 Jan 07, 2022
A Python library for automating interaction with websites.

Home page https://mechanicalsoup.readthedocs.io/ Overview A Python library for automating interaction with websites. MechanicalSoup automatically stor

4.3k Jan 07, 2023