Skip to content

URL not found when downloading imaging.frames.mov via ONE #20

@weiglszonja

Description

@weiglszonja

I’m getting a 404 error when trying to download the raw widefield movie (raw_widefield_data/imaging.frames.mov) for
eid = d34a502f-bd06-471f-8334-df41f785e1d9 using one.load_dataset.
one.list_datasets(eid) indicates that raw_widefield_data/imaging.frames.mov should be available, but the generated download URL points to:

https://ibl.flatironinstitute.org/public/zadorlab/Subjects/CSK-im-011/2021-06-21/001/raw_widefield_data/imaging.frames.e4d32aa6-6671-4848-a230-fed9841cd805.mov

which returns HTTP 404: Not Found. (Full traceback below)

Is the URL incorrect, or is the dataset missing/mis-registered on the server?

WidefieldImagingInterface is downloading data for eid='d34a502f-bd06-471f-8334-df41f785e1d9' ...
HTTP Error 404: Not Found https://ibl.flatironinstitute.org/public/zadorlab/Subjects/CSK-im-011/2021-06-21/001/raw_widefield_data/imaging.frames.e4d32aa6-6671-4848-a230-fed9841cd805.mov
Traceback (most recent call last):
  File "/Applications/PyCharm.app/Contents/plugins/python-ce/helpers/pydev/pydevd.py", line 1647, in _exec
    pydev_imports.execfile(file, globals, locals)  # execute the script
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Applications/PyCharm.app/Contents/plugins/python-ce/helpers/pydev/_pydev_imps/_pydev_execfile.py", line 18, in execfile
    exec(compile(contents+"\n", file, 'exec'), glob, loc)
  File "/Users/weian/catalystneuro/IBL-widefield-to-nwb/src/ibl_widefield_to_nwb/widefield2025/convert_session.py", line 146, in <module>
    session_to_nwb(
  File "/Users/weian/catalystneuro/IBL-widefield-to-nwb/src/ibl_widefield_to_nwb/widefield2025/convert_session.py", line 78, in session_to_nwb
    downloaded_file_paths = download_widefield_session(
                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/weian/catalystneuro/IBL-widefield-to-nwb/src/ibl_widefield_to_nwb/widefield2025/conversion/download.py", line 51, in download_widefield_session
    raw_widefield_files = WidefieldImagingInterface.download_data(one=one, eid=eid, download_only=True)
                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/weian/catalystneuro/IBL-widefield-to-nwb/src/ibl_widefield_to_nwb/widefield2025/datainterfaces/_base_ibl_interface.py", line 43, in download_data
    downloaded_file_path = one.load_dataset(
                           ^^^^^^^^^^^^^^^^^
  File "/Users/weian/anaconda3/envs/ibl-test-env/lib/python3.12/site-packages/one/util.py", line 47, in wrapper
    return method(self, eid, *args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/weian/anaconda3/envs/ibl-test-env/lib/python3.12/site-packages/one/api.py", line 1167, in load_dataset
    file, = self._check_filesystem(datasets, offline=offline, check_hash=check_hash)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/weian/anaconda3/envs/ibl-test-env/lib/python3.12/site-packages/one/api.py", line 662, in _check_filesystem
    new_files = self._download_datasets(dsets_to_download, update_cache=update_exists)
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/weian/anaconda3/envs/ibl-test-env/lib/python3.12/site-packages/one/api.py", line 2420, in _download_datasets
    return self._download_dataset(dsets, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/weian/anaconda3/envs/ibl-test-env/lib/python3.12/site-packages/one/api.py", line 2596, in _download_dataset
    files = self._download_file(valid_urls, target_dir, **kwargs)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/weian/anaconda3/envs/ibl-test-env/lib/python3.12/site-packages/one/api.py", line 2653, in _download_file
    local_path, md5 = self.alyx.download_file(url, target_dir=target_dir, return_md5=True)
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/weian/anaconda3/envs/ibl-test-env/lib/python3.12/site-packages/one/webclient.py", line 871, in download_file
    raise ex
  File "/Users/weian/anaconda3/envs/ibl-test-env/lib/python3.12/site-packages/one/webclient.py", line 866, in download_file
    files = download_fcn(url, **pars)
            ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/weian/anaconda3/envs/ibl-test-env/lib/python3.12/site-packages/one/webclient.py", line 379, in http_download_file_list
    outputs.append(future.result())
                   ^^^^^^^^^^^^^^^
  File "/Users/weian/anaconda3/envs/ibl-test-env/lib/python3.12/concurrent/futures/_base.py", line 449, in result
    return self.__get_result()
           ^^^^^^^^^^^^^^^^^^^
  File "/Users/weian/anaconda3/envs/ibl-test-env/lib/python3.12/concurrent/futures/_base.py", line 401, in __get_result
    raise self._exception
  File "/Users/weian/anaconda3/envs/ibl-test-env/lib/python3.12/concurrent/futures/thread.py", line 59, in run
    result = self.fn(*self.args, **self.kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/weian/anaconda3/envs/ibl-test-env/lib/python3.12/site-packages/one/webclient.py", line 462, in http_download_file
    raise e
  File "/Users/weian/anaconda3/envs/ibl-test-env/lib/python3.12/site-packages/one/webclient.py", line 459, in http_download_file
    u = urllib.request.urlopen(req)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/weian/anaconda3/envs/ibl-test-env/lib/python3.12/urllib/request.py", line 215, in urlopen
    return opener.open(url, data, timeout)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/weian/anaconda3/envs/ibl-test-env/lib/python3.12/urllib/request.py", line 521, in open
    response = meth(req, response)
               ^^^^^^^^^^^^^^^^^^^
  File "/Users/weian/anaconda3/envs/ibl-test-env/lib/python3.12/urllib/request.py", line 630, in http_response
    response = self.parent.error(
               ^^^^^^^^^^^^^^^^^^
  File "/Users/weian/anaconda3/envs/ibl-test-env/lib/python3.12/urllib/request.py", line 559, in error
    return self._call_chain(*args)
           ^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/weian/anaconda3/envs/ibl-test-env/lib/python3.12/urllib/request.py", line 492, in _call_chain
    result = func(*args)
             ^^^^^^^^^^^
  File "/Users/weian/anaconda3/envs/ibl-test-env/lib/python3.12/urllib/request.py", line 639, in http_error_default
    raise HTTPError(req.full_url, code, msg, hdrs, fp)
urllib.error.HTTPError: HTTP Error 404: Not Found

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions