A TUI to search IMDb, and more.
Project description
888 d8b 888 888
888 Y8P 888 888
888 888 888
.d8888b 888888 888d888 888 88888b.d88b. .d88888 88888b.
88K 888 888P" 888 888 "888 "88b d88" 888 888 "88b
"Y8888b. 888 888 888 888 888 888 888 888 888 888
X88 Y88b. 888 888 888 888 888 Y88b 888 888 d88P
88888P' "Y888 888 888 A TUI to search IMDb, and more
̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅
strimdb is a TUI (badly) written in Python to read information about movies/shows using IMDb and the OMDb API, with built-in support for playing trailers, streams from direct links or torrents if any (see disclaimer), and management of an accountless bookmark list.
Screenshots
Installation
strimdb can be installed from PyPi using pip install --break-system-packages strimdb, which will automatically resolve mandatory dependencies. Optional dependencies are also recommended:
mpvandyt-dlpto improve playback experience, to be installed using your distribution's package manager.torrenterto enable torrent streaming support.
Alternatively, strimdb is just a script and therefore can be run without installation:
- Download the raw
strimdbfile either from the tree here, or by cloning the whole repository. - Make the script executable with
chmod +x strimdb. - Run it with
./strimdborpython3 strimdbif you skipped the previous step, or alternatively move it to your$PATH(or create a symbolic link:ln -s /path/to/strimdb/strimdb ~/.local/bin/strimdb). - Install any mandatory Python dependency it may complain about when first run with
pip install [dep]or with your package manager if it provides Python packages (recommended); you should only needrequestsandbs4. - (Optional) Install recommended dependencies listed above.
Usage
$ ./strimdb -h
usage: strimdb [-h] [-r] [-s SEARCH] [-n NUMBER] [-f] [-t TYPE] [-g GENRE] [-l] [-i CSV]
options:
-h, --help show this help message and exit
-r, --rating include ratings in search results (slower)
-s SEARCH, --search SEARCH
search a term directly (use quotes if multiple words)
-n NUMBER, --number NUMBER
maximum number of results to show (a multiple of 10)
-f, --favourites restrict the search to favourites (partially functional)
-t TYPE, --type TYPE restrict the search to type "movie" or "series"
-g GENRE, --genre GENRE
restrict the search to a genre (not functional yet)
-l, --list-genres list possible genres
-i CSV, --import CSV import favourites from an IMDb list exported as csv
The script will ask for an OMDb API (free for < 1000 requests/day).
To do
strimdb is still very experimental, and multiple limitations and even bugs are known:
- searching through favourites (using
-f) is still broken in several ways:- results are not split into pages of
-nresults, - displayed index numbers correspond to row numbers in the local
favourites.csvfile instead row numbers from the list of matching results only, yet the latter are those that are required to enter the detailed view of a result, - initiating a search after the first one somehow does not work, the first search term appears to persist,
- results are not split into pages of
- genre filtering is not functional yet, and when it is, it will likely be limited to favourites to avoid very long scraping times,
- stream subtitles are not fetched yet for direct links, and quality may often be limited to 720p for the current provider identified,
- overall, Python standards are probably not followed as they should, PRs are welcome to improve functions and how they interact.
Disclaimer
This project. Any content extracted by this project is hosted by external non-affiliated sources, and everything served through strimdb is publicly accessible. While a web browser makes hundreds of requests to get everything made available by a site, this project goes on to make more targeted requests associated with only getting the content relevant to its purpose. If this project extracts content provided by your website, the code is public and may help you taking the necessary measures to counter the means used to extract it in the first place.
DMCA and Copyright Infrigements. This project is to be used at the user's own risk, based on their government and laws. Streaming copyrighted content without owning a legal copy and from an unendorsed source is illegal. No video files or direct links to video files are stored in this repository, as the script merely checks if sources exist. This is not its primary purpose, and the project has no control over the content it finds: this feature is for demonstration only and may only be tested by those who own a legal copy of the content, at their own risk. A browser is a tool, and the maliciousness of the tool depends on the user. This project uses client-side content access mechanisms. Hence, the copyright infrigements or DMCA in this project's regards are to be forwarded to the associated site by the associated notifier of any such claims. Finding a link using this script does not infringe copyright because no copy of the content is made by the script, just like when using a web search engine, and thus is not a valid reason to send a DMCA notice to sourcehut. If any source found by the script infringes on your rights as a copyright holder, they may be removed by contacting the web host service that published them online and is actually hosting them (not sourcehut, nor the maintainers of this repository). strimdb polls sources that have been made available independently from the script and externally, and as such has no control over them whatsoever.
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file strimdb-1.0.0.tar.gz.
File metadata
- Download URL: strimdb-1.0.0.tar.gz
- Upload date:
- Size: 15.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d2b06b885873ea2ed84403be262e9c1408588ca7277e1b6dea652438bdf57a2d
|
|
| MD5 |
750adf127ddf839b563281bffbdeba57
|
|
| BLAKE2b-256 |
e8bfbe62c6a0bf5c7a4adff5cf33d4a55c2129f8b173d650bd0d746b13bfc157
|
File details
Details for the file strimdb-1.0.0-py3-none-any.whl.
File metadata
- Download URL: strimdb-1.0.0-py3-none-any.whl
- Upload date:
- Size: 12.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f4e8b2683fb137571d6e0421e3c1e715cd7ed6422b44a8492e902645d831d9a8
|
|
| MD5 |
5ab9048d3a5ccf63e1bd414c5f1f8176
|
|
| BLAKE2b-256 |
3fcbe217e1008e68b79c1440cae132e980735afcc2609ac621db73612f88b91b
|