| Name | lrcup JSON |
| Version |
0.7.0
JSON |
| download |
| home_page | None |
| Summary | Python module and CLI for the LRCLIB API |
| upload_time | 2024-10-20 17:40:38 |
| maintainer | None |
| docs_url | None |
| author | None |
| requires_python | >=3.10 |
| license | None |
| keywords |
|
| VCS |
 |
| bugtrack_url |
|
| requirements |
No requirements were recorded.
|
| Travis-CI |
No Travis.
|
| coveralls test coverage |
No coveralls.
|
# LRCUP
Python CLI and library for interacting with the [LRCLIB.net API](https://lrclib.net/).
Also includes tools for embedding lyrics, along with general LRC tools.
## Installation
Install via PyPI:
```sh
pip install lrcup
```
## CLI Usage
```sh
# Upload a synced/unsynced LRC file:
lrcup upload example.lrc
# Upload lyrics from an already embedded track:
lrcup upload file.flac
# Embed lyrics into a file:
lrcup embed lyrics.lrc track.flac
# Search for lyrics and download them:
lrcup search never gonna give you up
# Search and embed lyrics for a given folder:
lrcup autoembed /mnt/music/
```
## Module Usage
The class method names are based off of the LRCLIB API endpoints.
Please refer to them for more information.
```py
from lrcup import LRCLib
lrclib = LRCLib()
# Fetch synced lyrics via search
results = lrclib.search(
track = "Never Gonna Give You Up",
artist = "Rick Astley"
)
print(results[0]["syncedLyrics"])
# Fetch synced lyrics directly
track = lrclib.get(
track = "Never Gonna Give You Up",
artist = "Rick Astley",
album = "Whenever You Need Somebody",
duration = 215
)
if track is not None:
print(track["syncedLyrics"])
# Publish synced lyrics
lrclib.publish(
token = lrclib.request_challenge(),
track = "Never Gonna Give You Up",
artist = "Rick Astley",
album = "Whenever You Need Somebody",
duration = 215,
plain_lyrics = "*Rickrolling*",
synced_lyrics = "[00:00.00] *Rickrolling*"
)
```
Raw data
{
"_id": null,
"home_page": null,
"name": "lrcup",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": null,
"keywords": null,
"author": null,
"author_email": "iiPython <ben@iipython.dev>",
"download_url": "https://files.pythonhosted.org/packages/8f/c0/ff95c20cb2e95757df668502724927e9ca8b108c76012375478748d9b216/lrcup-0.7.0.tar.gz",
"platform": null,
"description": "# LRCUP\n\nPython CLI and library for interacting with the [LRCLIB.net API](https://lrclib.net/). \nAlso includes tools for embedding lyrics, along with general LRC tools.\n\n## Installation\n\nInstall via PyPI:\n```sh\npip install lrcup\n```\n\n## CLI Usage\n\n```sh\n# Upload a synced/unsynced LRC file:\nlrcup upload example.lrc\n\n# Upload lyrics from an already embedded track:\nlrcup upload file.flac\n\n# Embed lyrics into a file:\nlrcup embed lyrics.lrc track.flac\n\n# Search for lyrics and download them:\nlrcup search never gonna give you up\n\n# Search and embed lyrics for a given folder:\nlrcup autoembed /mnt/music/\n```\n\n## Module Usage\n\nThe class method names are based off of the LRCLIB API endpoints. \nPlease refer to them for more information.\n\n```py\nfrom lrcup import LRCLib\n\nlrclib = LRCLib()\n\n# Fetch synced lyrics via search\nresults = lrclib.search(\n track = \"Never Gonna Give You Up\",\n artist = \"Rick Astley\"\n)\nprint(results[0][\"syncedLyrics\"])\n\n# Fetch synced lyrics directly\ntrack = lrclib.get(\n track = \"Never Gonna Give You Up\",\n artist = \"Rick Astley\",\n album = \"Whenever You Need Somebody\",\n duration = 215\n)\nif track is not None:\n print(track[\"syncedLyrics\"])\n\n# Publish synced lyrics\nlrclib.publish(\n token = lrclib.request_challenge(),\n track = \"Never Gonna Give You Up\",\n artist = \"Rick Astley\",\n album = \"Whenever You Need Somebody\",\n duration = 215,\n plain_lyrics = \"*Rickrolling*\",\n synced_lyrics = \"[00:00.00] *Rickrolling*\"\n)\n```\n",
"bugtrack_url": null,
"license": null,
"summary": "Python module and CLI for the LRCLIB API",
"version": "0.7.0",
"project_urls": {
"Homepage": "https://github.com/iiPythonx/lrcup",
"Issues": "https://github.com/iiPythonx/lrcup/issues"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "9c93893fe8be7f35a83a5a0bb806a0443fbfdf540b3f690a22cb9cc64c9e338e",
"md5": "73d2caca7d85004170b8b0a131752f7b",
"sha256": "06bd71b43283790d6897c6eb1b98fa3e97919d325bacb360bbd76d257d1b9f79"
},
"downloads": -1,
"filename": "lrcup-0.7.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "73d2caca7d85004170b8b0a131752f7b",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10",
"size": 9872,
"upload_time": "2024-10-20T17:40:36",
"upload_time_iso_8601": "2024-10-20T17:40:36.981657Z",
"url": "https://files.pythonhosted.org/packages/9c/93/893fe8be7f35a83a5a0bb806a0443fbfdf540b3f690a22cb9cc64c9e338e/lrcup-0.7.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "8fc0ff95c20cb2e95757df668502724927e9ca8b108c76012375478748d9b216",
"md5": "08ff77c1170fdd8c9119c6bdeb4e4aff",
"sha256": "ad27267ce5cdf15d335b0665b9245b76b7560f579dd8de93585ac523fb56571e"
},
"downloads": -1,
"filename": "lrcup-0.7.0.tar.gz",
"has_sig": false,
"md5_digest": "08ff77c1170fdd8c9119c6bdeb4e4aff",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10",
"size": 8122,
"upload_time": "2024-10-20T17:40:38",
"upload_time_iso_8601": "2024-10-20T17:40:38.072158Z",
"url": "https://files.pythonhosted.org/packages/8f/c0/ff95c20cb2e95757df668502724927e9ca8b108c76012375478748d9b216/lrcup-0.7.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-10-20 17:40:38",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "iiPythonx",
"github_project": "lrcup",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "lrcup"
}