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 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
|
### Standard-compliant API
|
||||||
|
|
||||||
|
@ -168,6 +168,11 @@ replacetitle 달라달라 (DALLA DALLA) Dalla Dalla
|
|||||||
# K/DA
|
# K/DA
|
||||||
belongtogether K/DA
|
belongtogether K/DA
|
||||||
|
|
||||||
|
# (G)I-DLE
|
||||||
|
countas Soyeon (G)I-DLE
|
||||||
|
countas Miyeon (G)I-DLE
|
||||||
|
|
||||||
|
|
||||||
# 2NE1
|
# 2NE1
|
||||||
countas CL 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