Library to display a loading bar in a terminal.
Project description
Python Loading Bar
Python module to display a nice loading bar in a terminal window.
Install
Go to the module directory and run:
$ pip install setup.py
Or:
$ python3 setup.py install
Getting Started
There are 3 different loading bar:
- Standard loading bar
- Loading bar with size loaded, speed and remaining time
- Loading bar with infos above plus a custom message (usefull to display a verbose loading bar)
Option 1
Standard loading bar without any other infos.
import loading
total_file_size = 1000
# Create a loading bar object with total_file_size in bytes
lb = loadingbar.LoadingBar(total_file_size)
# For every piece of file
for chunk in file:
# Update the loading bar with the len of new data
lg.update(len(chunk))
# When finished, display a 100% loading bar
lg.done()
Option 2
Standard loading bar with infos such as size downloaded, speed, eta.
import loading
total_file_size = 1000
lb = loadingbar.InfoLoadingBar(total_file_size)
# Run as above
Option 3
This special InternetLoadingBar
smooth the speed calculation by taking the overall average time rather than a instant speed.
import loading
total_file_size = 1000
lb = loadingbar.InternetLoadingBar(total_file_size)
# Run as above
Option 4
Loading bar that displays a message, like for example the filename that it is downloaded. Two options:
loadingbar.MessageLoadingBar
loadingbar.VerboseLoadingBar
import loading
total_file_size = 1000
lb = loadingbar.VerboseLoadingBar(total_file_size)
# For every piece of file
for chunk in file:
# Update the loading bar with the len of new data
lg.update(len(chunk), "Message to be displayed, such as filename, etc.")
# When finished, display a 100% loading bar
lg.done()
Option 5
Add a percentage after the loading bar.
-
loadingbar.PercentageLoadingBar(tot_size)
-
loadingbar.PercentageInfoLoadingBar(tot_size)
Option 6
Add a percentage after the loading bar.
-
loadingbar.PercentageBeforeLoadingBar(tot_size)
-
loadingbar.PercentageBeforeLoadingBarAndInfo(tot_size)
Customization
If a new and custom loading bar is needed, you can implement a new one by inheriting from the LoadingBar class or the abstract class ILoadingBar. See loading > loading_bar.py for examples.
License
MIT license. Feel free to use, share, or improve it.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Hashes for loadingbar-1.0.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cc5fab9695c1c6e8636b8675a04bbbfbd68bd1ca70f82dbaed26098c166d3d17 |
|
MD5 | a4cbe36bd1cb5da38828a280d1ef0308 |
|
BLAKE2b-256 | 19483b53f63c720fbf2b662d6b1cd29730486aa282ecec1f3574e8fea0e465bf |