# Buggy code
def _real_extract(self, url):
    video_id = self._match_id(url)
    url = "https://openload.co/embed/%s/" % video_id
    headers = {
        "User-Agent": self._USER_AGENT,
    }

    webpage = self._download_webpage(url, video_id, headers=headers)

    if "File not found" in webpage or "deleted by the owner" in webpage:
        raise ExtractorError("File not found", expected=True, video_id=video_id)

    phantom = PhantomJSwrapper(self, required_version="2.0")
    webpage, _ = phantom.get(url, html=webpage, video_id=video_id, headers=headers)

    decoded_id = get_element_by_id("streamurl", webpage)

    video_url = "https://openload.co/stream/%s?mime=true" % decoded_id

    title = (
        self._og_search_title(webpage, default=None)
        or self._search_regex(
            r'<span[^>]+class=["\']title["\'][^>]*>([^<]+)',
            webpage,
            "title",
            default=None,
        )
        or self._html_search_meta("description", webpage, "title", fatal=True)
    )

    entries = self._parse_html5_media_entries(url, webpage, video_id)
    entry = entries[0] if entries else {}
    subtitles = entry.get("subtitles")

    info_dict = {
        "id": video_id,
        "title": title,
        "thumbnail": entry.get("thumbnail")
        or self._og_search_thumbnail(webpage, default=None),
        "url": video_url,
        # Seems all videos have extensions in their titles
        "ext": determine_ext(title, "mp4"),
        "subtitles": subtitles,
        "http_headers": headers,
    }
    return info_dict


# Traceback (ExtractorError)
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: [u'https://openload.co/f/e-Ixz9ZR5L0/', u'-v']
[debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2017.10.29
[debug] Python version 2.7.10
[debug] exe versions: ffmpeg 3.4, ffprobe 3.4, phantomjs 2.1.1
[debug] Proxy map: {}
[Openload] e-Ixz9ZR5L0: Downloading webpage
ERROR: e-Ixz9ZR5L0: File not found
Traceback (most recent call last):
File "youtube_dl/YoutubeDL.py", line 784, in extract_info
ie_result = ie.extract(url)
File "outube_dl/extractor/common.py", line 434, in extract
ie_result = self._real_extract(url)
File "youtube_dl/extractor/openload.py", line 309, in _real_extract
raise ExtractorError('File not found', expected=True, video_id=video_id)
ExtractorError: e-Ixz9ZR5L0: File not found

# Fixed code
def _real_extract(self, url):
    video_id = self._match_id(url)
    url_pattern = "https://openload.co/%%s/%s/" % video_id
    headers = {
        "User-Agent": self._USER_AGENT,
    }

    for path in ("embed", "f"):
        page_url = url_pattern % path
        last = path == "f"
        webpage = self._download_webpage(
            page_url,
            video_id,
            "Downloading %s webpage" % path,
            headers=headers,
            fatal=last,
        )
        if not webpage:
            continue
        if "File not found" in webpage or "deleted by the owner" in webpage:
            if not last:
                continue
            raise ExtractorError("File not found", expected=True, video_id=video_id)
        break

    phantom = PhantomJSwrapper(self, required_version="2.0")
    webpage, _ = phantom.get(page_url, html=webpage, video_id=video_id, headers=headers)

    decoded_id = get_element_by_id("streamurl", webpage)

    video_url = "https://openload.co/stream/%s?mime=true" % decoded_id

    title = (
        self._og_search_title(webpage, default=None)
        or self._search_regex(
            r'<span[^>]+class=["\']title["\'][^>]*>([^<]+)',
            webpage,
            "title",
            default=None,
        )
        or self._html_search_meta("description", webpage, "title", fatal=True)
    )

    entries = self._parse_html5_media_entries(page_url, webpage, video_id)
    entry = entries[0] if entries else {}
    subtitles = entry.get("subtitles")

    info_dict = {
        "id": video_id,
        "title": title,
        "thumbnail": entry.get("thumbnail")
        or self._og_search_thumbnail(webpage, default=None),
        "url": video_url,
        # Seems all videos have extensions in their titles
        "ext": determine_ext(title, "mp4"),
        "subtitles": subtitles,
        "http_headers": headers,
    }
    return info_dict