pytolino 1.1__py3-none-any.whl → 1.2__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- pytolino/tolino_cloud.py +45 -0
- {pytolino-1.1.dist-info → pytolino-1.2.dist-info}/METADATA +3 -1
- pytolino-1.2.dist-info/RECORD +8 -0
- pytolino-1.1.dist-info/RECORD +0 -8
- {pytolino-1.1.dist-info → pytolino-1.2.dist-info}/LICENSE +0 -0
- {pytolino-1.1.dist-info → pytolino-1.2.dist-info}/WHEEL +0 -0
- {pytolino-1.1.dist-info → pytolino-1.2.dist-info}/top_level.txt +0 -0
pytolino/tolino_cloud.py
CHANGED
|
@@ -364,6 +364,51 @@ class Client(object):
|
|
|
364
364
|
if host_response.status_code != 200:
|
|
365
365
|
raise PytolinoException('add to collection failed')
|
|
366
366
|
|
|
367
|
+
def upload_metadata(self, book_id, **new_metadata):
|
|
368
|
+
"""upload some metadata to a specific book on the cloud
|
|
369
|
+
|
|
370
|
+
:book_id: ref on the cloud of the book
|
|
371
|
+
:**meta_data: dict of metadata than can be changed
|
|
372
|
+
|
|
373
|
+
"""
|
|
374
|
+
|
|
375
|
+
url = self.server_settings['meta_url'] + f'/?deliverableId={book_id}'
|
|
376
|
+
host_response = self.session.get(
|
|
377
|
+
url,
|
|
378
|
+
headers={
|
|
379
|
+
't_auth_token': self.access_token,
|
|
380
|
+
'hardware_id': self.hardware_id,
|
|
381
|
+
'reseller_id': self.server_settings['partner_id'],
|
|
382
|
+
}
|
|
383
|
+
)
|
|
384
|
+
|
|
385
|
+
book = host_response.json()
|
|
386
|
+
self._log_requests(host_response)
|
|
387
|
+
if host_response.status_code != 200:
|
|
388
|
+
raise PytolinoException('metadata upload failed')
|
|
389
|
+
|
|
390
|
+
for key, value in new_metadata.items():
|
|
391
|
+
book['metadata'][key] = value
|
|
392
|
+
|
|
393
|
+
payload = {
|
|
394
|
+
'uploadMetaData': book['metadata']
|
|
395
|
+
}
|
|
396
|
+
|
|
397
|
+
host_response = self.session.put(
|
|
398
|
+
url,
|
|
399
|
+
data=json.dumps(payload),
|
|
400
|
+
headers={
|
|
401
|
+
'content-type': 'application/json',
|
|
402
|
+
't_auth_token': self.access_token,
|
|
403
|
+
'hardware_id': self.hardware_id,
|
|
404
|
+
'reseller_id': self.server_settings['partner_id'],
|
|
405
|
+
}
|
|
406
|
+
)
|
|
407
|
+
|
|
408
|
+
self._log_requests(host_response)
|
|
409
|
+
if host_response.status_code != 200:
|
|
410
|
+
raise PytolinoException('metadata upload failed')
|
|
411
|
+
|
|
367
412
|
def upload(self, file_path, name=None, extension=None):
|
|
368
413
|
"""upload an ebook to your cloud
|
|
369
414
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: pytolino
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.2
|
|
4
4
|
Summary: client for tolino cloud
|
|
5
5
|
Author: Imam Usmani
|
|
6
6
|
Project-URL: Source Code, https://github.com/ImamAzim/pytolino
|
|
@@ -63,6 +63,7 @@ You can then upload, add to a collection or delete ebook on your cloud:
|
|
|
63
63
|
client.add_collection(epub_id, 'science fiction') # add the previous book to the collection science-fiction
|
|
64
64
|
client.delete_ebook(epub_id) # delete the previousely uploaded ebook
|
|
65
65
|
inventory = client.get_inventory() # get a list of all the books on the cloud and their metadata
|
|
66
|
+
client.upload_metadata(epub_id, title='my title', author='someone') # you can upload various kind of metadata
|
|
66
67
|
client.logout()
|
|
67
68
|
|
|
68
69
|
|
|
@@ -87,6 +88,7 @@ Features
|
|
|
87
88
|
* delete ebook from the cloud
|
|
88
89
|
* add a book to a collection
|
|
89
90
|
* download inventory
|
|
91
|
+
* upload metadata
|
|
90
92
|
* more to come...
|
|
91
93
|
|
|
92
94
|
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
pytolino/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
2
|
+
pytolino/servers_settings.ini,sha256=F8wSIWwl4XhQJKrhhbHtLhpXtfaGI7ODoD-VReaseBQ,1496
|
|
3
|
+
pytolino/tolino_cloud.py,sha256=qZA35bHpfMjaHd97dcsl3uRqoL64ts8o6DJ-hWUGkPQ,17402
|
|
4
|
+
pytolino-1.2.dist-info/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
|
|
5
|
+
pytolino-1.2.dist-info/METADATA,sha256=74bkCmM2y9gp6fWEINEB_3KHPB7cpAfwgyBLNBEsRR0,3061
|
|
6
|
+
pytolino-1.2.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
|
|
7
|
+
pytolino-1.2.dist-info/top_level.txt,sha256=3stGCqihEMMqlWGkME45OTJ0Prg-FO_kl554rtYNeuU,9
|
|
8
|
+
pytolino-1.2.dist-info/RECORD,,
|
pytolino-1.1.dist-info/RECORD
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
pytolino/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
2
|
-
pytolino/servers_settings.ini,sha256=F8wSIWwl4XhQJKrhhbHtLhpXtfaGI7ODoD-VReaseBQ,1496
|
|
3
|
-
pytolino/tolino_cloud.py,sha256=QeKp0lsQLi2HOvXS8XhIcRxKFoAwSoDndamn1mWFFuk,15852
|
|
4
|
-
pytolino-1.1.dist-info/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
|
|
5
|
-
pytolino-1.1.dist-info/METADATA,sha256=EckIp1U_kMNm1cv8qxxqYcV2GQM9ZEbTt2wsEQPgQ0Y,2929
|
|
6
|
-
pytolino-1.1.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
|
|
7
|
-
pytolino-1.1.dist-info/top_level.txt,sha256=3stGCqihEMMqlWGkME45OTJ0Prg-FO_kl554rtYNeuU,9
|
|
8
|
-
pytolino-1.1.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|