@@ -320,7 +320,7 @@ class MendeleyDataset(DatasetDownloader):
320
320
class OSFDataset (DatasetDownloader ):
321
321
"""Downloader for OSF repository."""
322
322
323
- REGEXP_ID = r"osf\.io\/(?P<record_id>.*)/ "
323
+ REGEXP_ID = r"osf\.io\/(?P<record_id>[^\/]*)\/{0,1} "
324
324
325
325
# the base entry point of the REST API
326
326
API_URL = "https://api.osf.io/v2/nodes/"
@@ -425,3 +425,23 @@ class SeaNoeDataset(DatasetDownloader):
425
425
ATTR_SIZE_JSONPATH = "size"
426
426
ATTR_HASH_JSONPATH = "checksum"
427
427
ATTR_HASH_TYPE_VALUE = "sha256"
428
+
429
+
430
+ class B2shareDataset (DatasetDownloader ):
431
+ """Downloader for B2Share repository."""
432
+
433
+ REGEXP_ID = r"b2share\.eudat\.eu\/records\/(?P<record_id>[0-9a-z]+)"
434
+
435
+ # the base entry point of the REST API
436
+ API_URL = "https://b2share.eudat.eu/api/"
437
+
438
+ # the files and metadata about the dataset
439
+ API_URL_META = "{api_url}records/{record_id}"
440
+ META_FILES_JSONPATH = "files[*]"
441
+
442
+ # paths to file attributes
443
+ ATTR_NAME_JSONPATH = "key"
444
+ ATTR_FILE_LINK_JSONPATH = "ePIC_PID"
445
+ ATTR_SIZE_JSONPATH = "size"
446
+ ATTR_HASH_JSONPATH = "checksum"
447
+ ATTR_HASH_TYPE_VALUE = "md5"
0 commit comments