{"record":{"id":"8bdca03956b176f3","repo":"ytdl-org/youtube-dl","slug":"phantomjs-executable-not-found-in-path-download-i","errorCode":null,"errorMessage":"PhantomJS executable not found in PATH, download it from http://phantomjs.org","messagePattern":"PhantomJS executable not found in PATH, download it from http://phantomjs\\.org","errorType":"exception","errorClass":"ExtractorError","httpStatus":null,"severity":"error","filePath":"youtube_dl/extractor/openload.py","lineNumber":117,"sourceCode":"          else {{\n            {jscode}\n          }}\n        }};\n        page.open(\"\");\n    '''\n\n    _TMP_FILE_NAMES = ['script', 'html', 'cookies']\n\n    @staticmethod\n    def _version():\n        return get_exe_version('phantomjs', version_re=r'([0-9.]+)')\n\n    def __init__(self, extractor, required_version=None, timeout=10000):\n        self._TMP_FILES = {}\n\n        self.exe = check_executable('phantomjs', ['-v'])\n        if not self.exe:\n            raise ExtractorError('PhantomJS executable not found in PATH, '\n                                 'download it from http://phantomjs.org',\n                                 expected=True)\n\n        self.extractor = extractor\n\n        if required_version:\n            version = self._version()\n            if is_outdated_version(version, required_version):\n                self.extractor._downloader.report_warning(\n                    'Your copy of PhantomJS is outdated, update it to version '\n                    '%s or newer if you encounter any errors.' % required_version)\n\n        self.options = {\n            'timeout': timeout,\n        }\n        for name in self._TMP_FILE_NAMES:\n            tmp = tempfile.NamedTemporaryFile(delete=False)\n            tmp.close()","sourceCodeStart":99,"sourceCodeEnd":135,"githubUrl":"https://github.com/ytdl-org/youtube-dl/blob/956b8c585591b401a543e409accb163eeaaa1193/youtube_dl/extractor/openload.py#L99-L135","documentation":"Error \"PhantomJS executable not found in PATH, download it from http://phantomjs.org\" thrown in ytdl-org/youtube-dl.","triggerScenarios":"Thrown at youtube_dl/extractor/openload.py:117 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Install PhantomJS and ensure its executable is in PATH (http://phantomjs.org)."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"956b8c585591b401a543e409accb163eeaaa1193","analyzedAt":"2026-08-14T18:59:47.863Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}