mirror of
https://github.com/krateng/maloja.git
synced 2023-08-10 21:12:55 +03:00
Added Python library for music players / scrobblers
This commit is contained in:
parent
0cfdc60111
commit
1aeb72fd8f
@ -134,7 +134,7 @@ These solutions allow you to directly setup scrobbling to your Maloja server:
|
||||
|
||||
If you want to implement your own method of scrobbling, it's very simple: You only need one POST request to `/apis/mlj_1/newscrobble` with the keys `artist`, `title` and `key` (and optionally `album`,`duration` (in seconds) and `time`(for cached scrobbles)) - either as form-data or json.
|
||||
|
||||
If you're the maintainer of a music player or server and would like to implement native Maloja scrobbling, feel free to reach out - I'll try my best to help.
|
||||
If you're the maintainer of a music player or server and would like to implement native Maloja scrobbling, feel free to reach out - I'll try my best to help. For Python applications, you can simply use the [`malojalib` package](https://pypi.org/project/maloja-lib/) for a consistent interface even with future updates.
|
||||
|
||||
### Standard-compliant API
|
||||
|
||||
|
@ -168,6 +168,11 @@ replacetitle 달라달라 (DALLA DALLA) Dalla Dalla
|
||||
# K/DA
|
||||
belongtogether K/DA
|
||||
|
||||
# (G)I-DLE
|
||||
countas Soyeon (G)I-DLE
|
||||
countas Miyeon (G)I-DLE
|
||||
|
||||
|
||||
# 2NE1
|
||||
countas CL 2NE1
|
||||
|
||||
|
Can't render this file because it has a wrong number of fields in line 5.
|
27
malojalib/__init__.py
Normal file
27
malojalib/__init__.py
Normal file
@ -0,0 +1,27 @@
|
||||
import requests
|
||||
|
||||
class MalojaInstance:
|
||||
def __init__(self,base_url,key):
|
||||
self.base_url = base_url
|
||||
self.key = key
|
||||
|
||||
def test(self):
|
||||
url = self.base_url + '/apis/mlj_1/test'
|
||||
response = requests.get(url,{'key':self.key})
|
||||
|
||||
return (response.status_code == 200)
|
||||
|
||||
def scrobble(self,artists,title,timestamp=None,album=None,duration=None):
|
||||
payload = {
|
||||
'key':self.key,
|
||||
'artists':artists,
|
||||
'title':title,
|
||||
'time':timestamp,
|
||||
'album':album,
|
||||
'duration':duration
|
||||
}
|
||||
|
||||
url = self.base_url + '/apis/mlj_1/newscrobble'
|
||||
response = requests.post(url,payload)
|
||||
|
||||
return response.json()
|
22
malojalib/__pkginfo__.py
Normal file
22
malojalib/__pkginfo__.py
Normal file
@ -0,0 +1,22 @@
|
||||
name = "maloja-lib"
|
||||
desc = "Utilities to interact with Maloja servers"
|
||||
author = {
|
||||
"name":"Johannes Krattenmacher",
|
||||
"email":"maloja@dev.krateng.ch",
|
||||
"github": "krateng"
|
||||
}
|
||||
version = 1,0,0
|
||||
versionstr = ".".join(str(n) for n in version)
|
||||
links = {
|
||||
"pypi":"maloja-lib",
|
||||
"github":"maloja"
|
||||
}
|
||||
python_version = ">=3.6"
|
||||
requires = [
|
||||
"requests"
|
||||
]
|
||||
resources = [
|
||||
]
|
||||
|
||||
commands = {
|
||||
}
|
Loading…
Reference in New Issue
Block a user