-
Notifications
You must be signed in to change notification settings - Fork 5
Closed
Description
Target USI:
mzspec:GNPS2:TASK-4d6b9bd8158b4f4eadfac04ea31c3aaa-nf_output/search/query_spectra/D0 - SM+ - 5.mzML:scan:1
Example Request
Resolver requests:
https://gnps2.org/spectrumpeaks?format=json&usi=mzspec:GNPS2:TASK-4d6b9bd8158b4f4eadfac04ea31c3aaa-nf_output/search/query_spectra/D0%20-%20SM+%20-%205.mzML:scan:1
Resolver should request:
https://gnps2.org/spectrumpeaks?format=json&usi=mzspec:GNPS2:TASK-4d6b9bd8158b4f4eadfac04ea31c3aaa-nf_output/search/query_spectra/D0%20-%20SM%2B%20-%205.mzML:scan:1
(+ -> %2B)
File path in USI should be escaped here, but we should probable create a general "escape USI" function:
| f"{gnps2server_url}/spectrumpeaks?format=json&usi={usi}" |
Here is some messy code to achieve this:
from urllib.parse import quote
portion_prior_to_task = usi.split("TASK-", 1)[0]
task_id_and_beyond = usi.split("TASK-", 1)[1]
task_id_and_path = task_id_and_beyond.split(':scan:', 1)[0]
task_id_and_path = quote(task_id_and_path)
scan = task_id_and_beyond.split(':scan:', 1)[1]
quoted_usi = f"{portion_prior_to_task}TASK-{task_id_and_path}:scan:{scan}"
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels