diff --git a/lib/galaxy/tool_util/biotools/source.py b/lib/galaxy/tool_util/biotools/source.py index 92c8b08a69b7..25838499aa55 100644 --- a/lib/galaxy/tool_util/biotools/source.py +++ b/lib/galaxy/tool_util/biotools/source.py @@ -54,12 +54,13 @@ def __init__(self, cache=None): def _raw_get_metadata(self, biotools_reference) -> Optional[str]: api_url = f"https://bio.tools/api/tool/{biotools_reference}?format=json" - req = requests.get(api_url, timeout=DEFAULT_SOCKET_TIMEOUT) - req.encoding = req.apparent_encoding - if req.status_code == 404: - return None - else: + try: + req = requests.get(api_url, timeout=DEFAULT_SOCKET_TIMEOUT) + req.raise_for_status() + req.encoding = req.apparent_encoding return req.text + except Exception: + return None def get_biotools_metadata(self, biotools_reference: str) -> Optional[BiotoolsEntry]: createfunc = functools.partial(self._raw_get_metadata, biotools_reference)