{"record":{"id":"8c4831c9c36a982f","repo":"xtekky/gpt4free","slug":"invalid-or-unsafe-image-url","errorCode":null,"errorMessage":"Invalid or unsafe image url","messagePattern":"Invalid or unsafe image url","errorType":"validation","errorClass":"ValueError","httpStatus":null,"severity":"error","filePath":"g4f/image/__init__.py","lineNumber":466,"sourceCode":"    if isinstance(image, bytes):\n        return image\n    elif isinstance(image, str):\n        if image.startswith(\"data:\"):\n            is_data_uri_an_image(image)\n            return extract_data_uri(image)\n        elif image.startswith(\"http://\") or image.startswith(\"https://\"):\n            if not is_safe_url(image):\n                raise ValueError(\"Invalid or disallowed media URL\")\n            path: str = urlparse(image).path\n            if path.startswith(\"/files/\"):\n                path = get_bucket_dir(*path.split(\"/\")[2:])\n                if os.path.exists(path):\n                    return Path(path).read_bytes()\n                else:\n                    raise FileNotFoundError(f\"File not found: {path}\")\n            else:\n                if not is_safe_url(image):\n                    raise ValueError(\"Invalid or unsafe image url\")\n                resp = requests.get(\n                    image,\n                    headers={\n                        \"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36 Edg/137.0.0.0\",\n                    },\n                )\n                if resp.ok and is_accepted_format(resp.content):\n                    return resp.content\n                raise ValueError(\n                    \"Invalid image url. Expected bytes, str, or PIL Image.\"\n                )\n        elif os.path.exists(image):\n            return Path(image).read_bytes()\n        else:\n            raise ValueError(\n                f\"Invalid image format or file not found. Expected bytes, str, or PIL Image. Got: {image[:100]}\"\n            )\n    elif isinstance(image, Image.Image):","sourceCodeStart":448,"sourceCodeEnd":484,"githubUrl":"https://github.com/xtekky/gpt4free/blob/973504e1770928ed5fb82f43da528f441ad9ddc3/g4f/image/__init__.py#L448-L484","documentation":"Error \"Invalid or unsafe image url\" thrown in xtekky/gpt4free.","triggerScenarios":"Thrown at g4f/image/__init__.py:466 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Use a valid http(s) image URL; local paths and unsafe URLs are rejected."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"973504e1770928ed5fb82f43da528f441ad9ddc3","analyzedAt":"2026-08-14T23:45:32.408Z","schemaVersion":2},"datasetVersion":"2026-08-15T17:31:12.345Z"}