theislab / cellrank

CellRank: dynamics from multi-view single-cell data
https://cellrank.org
BSD 3-Clause "New" or "Revised" License
341 stars 47 forks source link

Download issue: cr.datasets.pancreas()-> HTTPError: HTTP Error 404: Not Found #499

Closed YubinXie closed 3 years ago

YubinXie commented 3 years ago

...

cr.datasets.pancreas()
HTTPError                                 Traceback (most recent call last)
<ipython-input-5-81df996d87a9> in <module>
----> 1 adata = cr.datasets.pancreas()

~/miniconda3/envs/scrna/lib/python3.8/site-packages/cellrank/datasets/_datasets.py in pancreas()
     52     """
     53 
---> 54     return _load_dataset_from_url(*_datasets["pancreas"])

~/miniconda3/envs/scrna/lib/python3.8/site-packages/cellrank/datasets/_datasets.py in _load_dataset_from_url(fpath, url)
     33         logg.debug(f"Unable to create directory `{dirname!r}`. Reason `{e}`")
     34 
---> 35     adata = read(fpath, backup_url=url, sparse=True, cache=True)
     36     adata.var_names_make_unique()
     37 

~/miniconda3/envs/scrna/lib/python3.8/site-packages/scanpy/readwrite.py in read(filename, backed, sheet, ext, delimiter, first_column_names, backup_url, cache, cache_compression, **kwargs)
    110     filename = Path(filename)  # allow passing strings
    111     if is_valid_filename(filename):
--> 112         return _read(
    113             filename,
    114             backed=backed,

~/miniconda3/envs/scrna/lib/python3.8/site-packages/scanpy/readwrite.py in _read(filename, backed, sheet, ext, delimiter, first_column_names, backup_url, cache, cache_compression, suppress_cache_warning, **kwargs)
    692     else:
    693         ext = is_valid_filename(filename, return_ext=True)
--> 694     is_present = _check_datafile_present_and_download(filename, backup_url=backup_url,)
    695     if not is_present:
    696         logg.debug(f'... did not find original file {filename}')

~/miniconda3/envs/scrna/lib/python3.8/site-packages/scanpy/readwrite.py in _check_datafile_present_and_download(path, backup_url)
    968         path.parent.mkdir(parents=True)
    969 
--> 970     _download(backup_url, path)
    971     return True
    972 

~/miniconda3/envs/scrna/lib/python3.8/site-packages/scanpy/readwrite.py in _download(url, path)
    934             tqdm(unit='B', unit_scale=True, miniters=1, desc=path.name) as t, \
    935             path.open("wb") as f, \
--> 936             urlopen(Request(url, headers={"User-agent": "scanpy-user"})) as resp:
    937 
    938             t.total = int(resp.info().get("content-length", 0))

~/miniconda3/envs/scrna/lib/python3.8/urllib/request.py in urlopen(url, data, timeout, cafile, capath, cadefault, context)
    220     else:
    221         opener = _opener
--> 222     return opener.open(url, data, timeout)
    223 
    224 def install_opener(opener):

~/miniconda3/envs/scrna/lib/python3.8/urllib/request.py in open(self, fullurl, data, timeout)
    529         for processor in self.process_response.get(protocol, []):
    530             meth = getattr(processor, meth_name)
--> 531             response = meth(req, response)
    532 
    533         return response

~/miniconda3/envs/scrna/lib/python3.8/urllib/request.py in http_response(self, request, response)
    638         # request was successfully received, understood, and accepted.
    639         if not (200 <= code < 300):
--> 640             response = self.parent.error(
    641                 'http', request, response, code, msg, hdrs)
    642 

~/miniconda3/envs/scrna/lib/python3.8/urllib/request.py in error(self, proto, *args)
    567         if http_err:
    568             args = (dict, 'default', 'http_error_default') + orig_args
--> 569             return self._call_chain(*args)
    570 
    571 # XXX probably also want an abstract factory that knows when it makes

~/miniconda3/envs/scrna/lib/python3.8/urllib/request.py in _call_chain(self, chain, kind, meth_name, *args)
    500         for handler in handlers:
    501             func = getattr(handler, meth_name)
--> 502             result = func(*args)
    503             if result is not None:
    504                 return result

~/miniconda3/envs/scrna/lib/python3.8/urllib/request.py in http_error_default(self, req, fp, code, msg, hdrs)
    647 class HTTPDefaultErrorHandler(BaseHandler):
    648     def http_error_default(self, req, fp, code, msg, hdrs):
--> 649         raise HTTPError(req.full_url, code, msg, hdrs, fp)
    650 
    651 class HTTPRedirectHandler(BaseHandler):

HTTPError: HTTP Error 404: Not Found
YubinXie commented 3 years ago

solved it after updating cellrank.