Skip to main content

A Terminal based YouTube player and downloader. No Youtube API key required. Forked from mps-youtube

Project description

                      _         _          
                     | |       | |         
  _   _  _____      _| |_ _   _| |__   ___ 
 | | | |/ _ \ \ /\ / / __| | | | '_ \ / _ \
 | |_| |  __/\ V  V /| |_| |_| | |_) |  __/
  \__, |\___| \_/\_/  \__|\__,_|_.__/ \___|
   __/ |                                   
  |___/


yewtube, forked from mps-youtube , is a Terminal based YouTube player and downloader. No Youtube API key required.
Visit this page if you want to support maintainers of this project.

Installation

Stable Version

Using pip

  1. Install using pip install yewtube
  2. Run using, yt. Enjoy!

Using pipx (Recommended)

  1. Install pipx using pip install pipx
  2. Install yewtube using pipx install yewtube
  3. Now, type yt That's it.

Latest Version

Using pip

  1. Install using pip install git+https://github.com/iamtalhaasghar/yewtube.git
  2. Run using, yt. Enjoy!

Using pipx

  1. Install pipx using pip install pipx
  2. Install yewtube using pipx install git+https://github.com/iamtalhaasghar/yewtube.git
  3. Now, type yt That's it.

What's new in yewtube?

  • No Youtube API Key required
  • Run audio in VLC with no GUI

See complete and up-to-date changelog here.

These features are still inherited from mps-youtube.

  • Search and play audio/video from YouTube
  • Search tracks of albums by album title
  • Search and import YouTube playlists
  • Create and save local playlists
  • Download audio/video
  • Convert to mp3 & other formats (requires ffmpeg or avconv)
  • View video comments
  • Works with Python 3.x
  • Works with Windows, Linux and Mac OS X
  • Requires mplayer, mpv or VLC

This project is based on mps-youtube and mps-youtube is based on mps, a terminal based program to search, stream and download music. This implementation uses YouTube as a source of content and can play and download video as well as audio. The pafy library handles interfacing with YouTube.

mps-youtube wiki
yewtube wiki

Screenshots

Search:

A standard search is performed by entering / followed by search terms.

You can play all of the search results by giving 1- as input

Repeating song/songs can be done with song_number[loop], for example: 1[3] or 4-6[2]

Local Playlists:

Search result items can easily be stored in local playlists.

YouTube Playlists:

YouTube playlists can be searched and played or saved as local playlists.

A playlist search is performed by // followed by search term.

Download:

Content can be downloaded in various formats and resolutions.

Comments:

A basic comments browser is available to view YouTube user comments.

Music Album Matching:

An album title can be specified and yewtube will attempt to find matches for each track of the album, based on title and duration. Type help search for more info.

Customisation:

Search results can be customised to display additional fields and ordered by various criteria.

This configuration was set up using the following commands

set order views
set columns user:14 date comments rating likes dislikes category:9 views

Type help config for help on configuration options

Upgrading

If installed using pipx

pipx upgrade yewtube

If installed using pip

pip install --upgrade yewtube

Usage

yewtube is run on the command line using the command:

yt

Enter h from within the program for help.

Using yewtube with mpris

  1. Install PyGObject, GTK and their dependencies based on this guide https://pygobject.readthedocs.io/en/latest/getting_started.html
  2. Install yewtube with mpris extra
> # recommended
> pipx install 'yewtube[mpris]'
> # or
> pip install 'yewtube[mpris]'
  1. check yewtube version
> yt --version
yewtube version    : 2.8.2
yt_dlp version     : 2022.02.04
Python version     : 3.9.7 (default, Nov  7 2021, 15:17:57)
[GCC 11.2.0]
Processor          : x86_64
Machine type       : x86_64
Architecture       : 64bit, ELF
Platform           : Linux-5.13.0-35-generic-x86_64-with-glibc2.34
sys.stdout.enc     : utf-8
default enc        : utf-8
Config dir         : /home/user/.config/mps-youtube
dbus               : 1.2.18
glib               : True
env:TERM           : tmux-256color
env:SHELL          : /usr/bin/zsh
env:LANG           : en_US.UTF-8

If everything working correctly, dbug and glib would have similar result as above text

  1. run set mpris true on yewtube
  2. check with playerctl
> playerctl -l
mps-youtube.instance567867

Check also the common-issue if you are having problem with yewtube.

How to Contribute

Contributions are warmly welcomed! However, please check out the contribution page before making a contribution.

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

yewtube-2.10.4.tar.gz (110.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

yewtube-2.10.4-py3-none-any.whl (117.8 kB view details)

Uploaded Python 3

File details

Details for the file yewtube-2.10.4.tar.gz.

File metadata

  • Download URL: yewtube-2.10.4.tar.gz
  • Upload date:
  • Size: 110.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.9.6 readme-renderer/37.3 requests/2.31.0 requests-toolbelt/1.0.0 urllib3/2.0.3 tqdm/4.65.0 importlib-metadata/6.6.0 keyring/23.13.1 rfc3986/2.0.0 colorama/0.4.6 CPython/3.10.12

File hashes

Hashes for yewtube-2.10.4.tar.gz
Algorithm Hash digest
SHA256 0a3b9d355cb0e054209461aaa51591a01ffb9fe2b95d763b915def4101494963
MD5 6d31f9951e3710065832d1ed4841c897
BLAKE2b-256 8e09eb56c8b2e7482dfa73db1b15ca9c5a23100ea1004ed434d9f097787358d4

See more details on using hashes here.

File details

Details for the file yewtube-2.10.4-py3-none-any.whl.

File metadata

  • Download URL: yewtube-2.10.4-py3-none-any.whl
  • Upload date:
  • Size: 117.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.9.6 readme-renderer/37.3 requests/2.31.0 requests-toolbelt/1.0.0 urllib3/2.0.3 tqdm/4.65.0 importlib-metadata/6.6.0 keyring/23.13.1 rfc3986/2.0.0 colorama/0.4.6 CPython/3.10.12

File hashes

Hashes for yewtube-2.10.4-py3-none-any.whl
Algorithm Hash digest
SHA256 d6178504c653c3022f80f7ea9fa8b76f698600cbf6c71e4c5e5353eadc85f3a1
MD5 e7efc7d74db4743c8b3cf317dba2f2e0
BLAKE2b-256 5f9dd989219249a99afe269d28cdae6cfad5e2afc3450b5ba1a32e22f4fcfcb0

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