# YTSort
This program sorts the already downloaded youtube videos present in a folder by renaming them and adding serial number before their names.
# Requirements
Youtube Data API v3 is required. Get it from [here](https://console.cloud.google.com/apis/library/youtube.googleapis.com?supportedpurview=project)
# Install
###### Recommended (To install pipx click [here](https://github.com/pypa/pipx#install-pipx))
```
pipx install ytsort
```
###### or
```
pip install ytsort
```
#### Or upgrade by:
```
pipx upgrade ytsort
```
###### or
```
pip install --upgrade ytsort
```
# Usage
Set Youtube API Key to the environment variable 'YOUTUBE_DATA_API_KEY' (for ease of use, but not required).
### Execute:
```
ytsort
```
```
Usage: ytsort [OPTIONS]
Options:
-c, --character TEXT Character after serial.
-z, --zero Add zero before serial numbers to make them all of
equal length.
-x, --nozero Don't add zero before serial numbers.
-d, --defaults Change the default configurations and exit.
-r, --remove-serial Remove the serial numbers from the local files upto
the given character
--help Show this message and exit.
```
# Install from source
Poetry is required. For installation click [here](https://python-poetry.org/docs/#installation).
1. Download the source and install the dependencies by running:
```
git clone https://github.com/aqdasak/YTSort.git
cd YTSort
poetry install
```
2. Not required but for ease of use
a) Set Youtube API Key to the environment variable 'YOUTUBE_DATA_API_KEY'
or
b) edit the `config.py`:
`'api_key': os.environ.get('YOUTUBE_DATA_API_KEY'),` to `'api_key': <Your Youtube API key>,`
### Run
In the source folder containing pyproject.toml
```
poetry shell
```
then cd into the folder containing youtube videos and execute:
```
ytsort
```
Raw data
{
"_id": null,
"home_page": "https://github.com/aqdasak/YTSort/",
"name": "ytsort",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.10,<4.0",
"maintainer_email": "",
"keywords": "python,youtube,sort,youtube-playlist,youtube-data-api-v3",
"author": "Aqdas Ahmad Khan",
"author_email": "aqdasak@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/a4/6d/dcdf4f340a22263345c6632ac191338d8134fb42d9dbb6111976e755d357/ytsort-1.4.0.tar.gz",
"platform": null,
"description": "# YTSort\n\nThis program sorts the already downloaded youtube videos present in a folder by renaming them and adding serial number before their names.\n\n# Requirements\n\nYoutube Data API v3 is required. Get it from [here](https://console.cloud.google.com/apis/library/youtube.googleapis.com?supportedpurview=project)\n\n# Install\n###### Recommended (To install pipx click [here](https://github.com/pypa/pipx#install-pipx))\n```\npipx install ytsort\n```\n\n###### or\n```\npip install ytsort\n```\n\n#### Or upgrade by:\n```\npipx upgrade ytsort\n```\n###### or\n```\npip install --upgrade ytsort\n```\n# Usage\n\nSet Youtube API Key to the environment variable 'YOUTUBE_DATA_API_KEY' (for ease of use, but not required).\n\n### Execute:\n```\nytsort\n```\n\n```\nUsage: ytsort [OPTIONS]\n\nOptions:\n\n -c, --character TEXT Character after serial.\n -z, --zero Add zero before serial numbers to make them all of\n equal length.\n -x, --nozero Don't add zero before serial numbers.\n -d, --defaults Change the default configurations and exit.\n -r, --remove-serial Remove the serial numbers from the local files upto\n the given character\n --help Show this message and exit.\n```\n\n\n\n# Install from source\nPoetry is required. For installation click [here](https://python-poetry.org/docs/#installation).\n\n1. Download the source and install the dependencies by running:\n \n ``` \n git clone https://github.com/aqdasak/YTSort.git\n cd YTSort\n poetry install\n ```\n\n2. Not required but for ease of use\n \n a) Set Youtube API Key to the environment variable 'YOUTUBE_DATA_API_KEY'\n\n or\n \n b) edit the `config.py`:\n\n `'api_key': os.environ.get('YOUTUBE_DATA_API_KEY'),` to `'api_key': <Your Youtube API key>,`\n\n### Run\nIn the source folder containing pyproject.toml\n```\npoetry shell\n```\n\nthen cd into the folder containing youtube videos and execute:\n```\nytsort\n```\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Arrange downloaded youtube videos",
"version": "1.4.0",
"project_urls": {
"Homepage": "https://github.com/aqdasak/YTSort/",
"Repository": "https://github.com/aqdasak/YTSort/"
},
"split_keywords": [
"python",
"youtube",
"sort",
"youtube-playlist",
"youtube-data-api-v3"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "7592d5888db7ed4ec558ce3e25c381a7c514ee040045414fd341e7c8fc25319a",
"md5": "c08624c6b31292a40f34ca0c40d4845e",
"sha256": "ec1fa2784f9605995a962c00cda58802aa5fe53111a0d83e5e9407aac91574a9"
},
"downloads": -1,
"filename": "ytsort-1.4.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "c08624c6b31292a40f34ca0c40d4845e",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10,<4.0",
"size": 15218,
"upload_time": "2023-12-28T18:47:29",
"upload_time_iso_8601": "2023-12-28T18:47:29.473360Z",
"url": "https://files.pythonhosted.org/packages/75/92/d5888db7ed4ec558ce3e25c381a7c514ee040045414fd341e7c8fc25319a/ytsort-1.4.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "a46ddcdf4f340a22263345c6632ac191338d8134fb42d9dbb6111976e755d357",
"md5": "6a7c671ffb5e87927f53295e2b9fc4f9",
"sha256": "63e5b54b53f206a38c82c099f6bdf68b6a065e96a11b896009cd668750d6ea8c"
},
"downloads": -1,
"filename": "ytsort-1.4.0.tar.gz",
"has_sig": false,
"md5_digest": "6a7c671ffb5e87927f53295e2b9fc4f9",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10,<4.0",
"size": 13693,
"upload_time": "2023-12-28T18:47:32",
"upload_time_iso_8601": "2023-12-28T18:47:32.315115Z",
"url": "https://files.pythonhosted.org/packages/a4/6d/dcdf4f340a22263345c6632ac191338d8134fb42d9dbb6111976e755d357/ytsort-1.4.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-12-28 18:47:32",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "aqdasak",
"github_project": "YTSort",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "ytsort"
}