calesthio/OpenMontage · error · ValueError

Could not find download URL on Mixkit page: {detail_url}

Error message

Could not find download URL on Mixkit page: {detail_url}

What it means

Error "Could not find download URL on Mixkit page: {detail_url}" thrown in calesthio/OpenMontage.

Source

Thrown at tools/video/stock_sources/mixkit.py:194

            # Look for video source tags
            if not download_url:
                for source in soup.select("video source[src]"):
                    src = source.get("src", "")
                    if src and any(ext in src.lower() for ext in [".mp4", ".mov"]):
                        download_url = src
                        break

            # Look for data attributes with video URLs
            if not download_url:
                for el in soup.select("[data-video-url], [data-download-url], [data-src]"):
                    url = el.get("data-video-url") or el.get("data-download-url") or el.get("data-src") or ""
                    if url and any(ext in url.lower() for ext in [".mp4", ".mov"]):
                        download_url = url
                        break

            if not download_url:
                raise ValueError(f"Could not find download URL on Mixkit page: {detail_url}")

            if not download_url.startswith("http"):
                download_url = f"https://mixkit.co{download_url}"

            return self._stream_download(download_url, out_path)

        except Exception as e:
            raise RuntimeError(f"Mixkit download failed for {detail_url}: {e}") from e

    def _stream_download(self, url: str, out_path: Path) -> Path:
        import requests

        with requests.get(
            url, stream=True, timeout=120,
            headers={"User-Agent": "OpenMontage/1.0"},
        ) as r:
            r.raise_for_status()
            with open(out_path, "wb") as f:

View on GitHub (pinned to 95e1c3d0ab)

Solutions

  1. The Mixkit page structure may have changed; fetch the page manually and extract the video file URL.
  2. Pick a different clip from the candidate list whose page still exposes a direct link.

When it happens

Trigger: The Mixkit stock-footage page HTML contains no resolvable download URL for the clip.

Common situations: See trigger scenarios.


AI-assisted analysis of calesthio/OpenMontage@95e1c3d0ab (2026-08-15). Data as JSON: /api/errors/3fc762a266324f94. Report an issue: GitHub.