prompt: We are currently solving the following issue within our repository. Here is the issue text:
  --- BEGIN ISSUE ---
  Kanal 7 does not show
  ## **Checklist**
  
  - [x] This is a bug report.
  - [ ] This is a feature request.
  - [ ] This is a plugin (improvement) request.
  - [ ] I have read the contribution guidelines.
  
  ##  **Description**
  
   i cant see anything at kanal 7.com . i have test it with this links but i became black screen 
  
  ## **Reproduction steps / Explicit stream URLs to test**
  
  #SERVICE 5002:0:1:1DE6:C544:7E:460000:0:0:0:http%3a//127.0.0.1%3a8088/https%3a//new.10gbps.tv%3a443/live/kanal7LiveDesktop/index.m3u8
  #DESCRIPTION KANAL 7 
  #SERVICE 5002:0:1:1DE6:C544:7E:460000:0:0:0:http%3a//127.0.0.1%3a8088/http%3a//www.kanal7.com/canli-izle
  #DESCRIPTION KANAL 7
  #SERVICE 5002:0:1:1DE6:C544:7E:460000:0:0:0:http%3a//127.0.0.1%3a8088/http%3a//www.izle7.com/canli-yayin-frame?air=1
  #DESCRIPTION KANAL 7
  
  --- END ISSUE ---
  
  Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
  --- BEGIN FILES ---
  Path: `src/streamlink/plugins/kanal7.py`
  Content:
  ```
  1 from __future__ import print_function
  2 import re
  3 
  4 from streamlink.plugin import Plugin
  5 from streamlink.plugin.api import http
  6 from streamlink.plugin.api import useragents
  7 from streamlink.plugin.api import validate
  8 from streamlink.stream import HLSStream
  9 
  10 
  11 class Kanal7(Plugin):
  12     url_re = re.compile(r"https?://(?:www.)?kanal7.com/canli-izle")
  13     iframe_re = re.compile(r'iframe .*?src="(http://[^"]*?)"')
  14     stream_re = re.compile(r'''tp_file\s+=\s+['"](http[^"]*?)['"]''')
  15 
  16     @classmethod
  17     def can_handle_url(cls, url):
  18         return cls.url_re.match(url) is not None
  19 
  20     def find_iframe(self, url):
  21         res = http.get(url)
  22         # find iframe url
  23         iframe = self.iframe_re.search(res.text)
  24         iframe_url = iframe and iframe.group(1)
  25         if iframe_url:
  26             self.logger.debug("Found iframe: {}", iframe_url)
  27         return iframe_url
  28 
  29     def _get_streams(self):
  30         iframe1 = self.find_iframe(self.url)
  31         if iframe1:
  32             iframe2 = self.find_iframe(iframe1)
  33             if iframe2:
  34                 ires = http.get(iframe2)
  35                 stream_m = self.stream_re.search(ires.text)
  36                 stream_url = stream_m and stream_m.group(1)
  37                 if stream_url:
  38                     yield "live", HLSStream(self.session, stream_url, headers={"Referer": iframe2})
  39             else:
  40                 self.logger.error("Could not find second iframe, has the page layout changed?")
  41         else:
  42             self.logger.error("Could not find iframe, has the page layout changed?")
  43 
  44 
  45 __plugin__ = Kanal7
  46
  ```
  --- END FILES ---
  
  Please first localize the bug based on the issue statement, and then generate a patch according to the `git diff` format fenced by three backticks.
  
  Here is an example:
  
  ```diff
  diff --git a/examples/server_async.py b/examples/server_async.py
  --- a/examples/server_async.py
  +++ b/examples/server_async.py
  @@ -313,4 +313,4 @@
   
   
   if __name__ == "__main__":
  -    asyncio.run(run_async_server("."), debug=True)
  +    asyncio.run(run_async_server(), debug=True)
  diff --git a/examples/server_sync.py b/examples/server_sync.py
  --- a/examples/server_sync.py
  +++ b/examples/server_sync.py
  @@ -313,5 +313,5 @@
   
   
   if __name__ == "__main__":
  -    server = run_sync_server(".")
  +    server = run_sync_server()
       server.shutdown()
  
  ```
  
golden_diff: diff --git a/src/streamlink/plugins/kanal7.py b/src/streamlink/plugins/kanal7.py
  --- a/src/streamlink/plugins/kanal7.py
  +++ b/src/streamlink/plugins/kanal7.py
  @@ -6,12 +6,13 @@
   from streamlink.plugin.api import useragents
   from streamlink.plugin.api import validate
   from streamlink.stream import HLSStream
  +from streamlink.utils import update_scheme
   
   
   class Kanal7(Plugin):
       url_re = re.compile(r"https?://(?:www.)?kanal7.com/canli-izle")
  -    iframe_re = re.compile(r'iframe .*?src="(http://[^"]*?)"')
  -    stream_re = re.compile(r'''tp_file\s+=\s+['"](http[^"]*?)['"]''')
  +    iframe_re = re.compile(r'iframe .*?src="((?:http:)?//[^"]*?)"')
  +    stream_re = re.compile(r'''video-source\s*=\s*['"](http[^"']*?)['"]''')
   
       @classmethod
       def can_handle_url(cls, url):
  @@ -23,6 +24,7 @@
           iframe = self.iframe_re.search(res.text)
           iframe_url = iframe and iframe.group(1)
           if iframe_url:
  +            iframe_url = update_scheme(self.url, iframe_url)
               self.logger.debug("Found iframe: {}", iframe_url)
           return iframe_url
  
verification_info: {"golden_diff": "diff --git a/src/streamlink/plugins/kanal7.py b/src/streamlink/plugins/kanal7.py\n--- a/src/streamlink/plugins/kanal7.py\n+++ b/src/streamlink/plugins/kanal7.py\n@@ -6,12 +6,13 @@\n from streamlink.plugin.api import useragents\n from streamlink.plugin.api import validate\n from streamlink.stream import HLSStream\n+from streamlink.utils import update_scheme\n \n \n class Kanal7(Plugin):\n     url_re = re.compile(r\"https?://(?:www.)?kanal7.com/canli-izle\")\n-    iframe_re = re.compile(r'iframe .*?src=\"(http://[^\"]*?)\"')\n-    stream_re = re.compile(r'''tp_file\\s+=\\s+['\"](http[^\"]*?)['\"]''')\n+    iframe_re = re.compile(r'iframe .*?src=\"((?:http:)?//[^\"]*?)\"')\n+    stream_re = re.compile(r'''video-source\\s*=\\s*['\"](http[^\"']*?)['\"]''')\n \n     @classmethod\n     def can_handle_url(cls, url):\n@@ -23,6 +24,7 @@\n         iframe = self.iframe_re.search(res.text)\n         iframe_url = iframe and iframe.group(1)\n         if iframe_url:\n+            iframe_url = update_scheme(self.url, iframe_url)\n             self.logger.debug(\"Found iframe: {}\", iframe_url)\n         return iframe_url\n", "issue": "Kanal 7 does not show\n## **Checklist**\r\n\r\n- [x] This is a bug report.\r\n- [ ] This is a feature request.\r\n- [ ] This is a plugin (improvement) request.\r\n- [ ] I have read the contribution guidelines.\r\n\r\n##  **Description**\r\n\r\n i cant see anything at kanal 7.com . i have test it with this links but i became black screen \r\n\r\n## **Reproduction steps / Explicit stream URLs to test**\r\n\r\n#SERVICE 5002:0:1:1DE6:C544:7E:460000:0:0:0:http%3a//127.0.0.1%3a8088/https%3a//new.10gbps.tv%3a443/live/kanal7LiveDesktop/index.m3u8\r\n#DESCRIPTION KANAL 7 \r\n#SERVICE 5002:0:1:1DE6:C544:7E:460000:0:0:0:http%3a//127.0.0.1%3a8088/http%3a//www.kanal7.com/canli-izle\r\n#DESCRIPTION KANAL 7\r\n#SERVICE 5002:0:1:1DE6:C544:7E:460000:0:0:0:http%3a//127.0.0.1%3a8088/http%3a//www.izle7.com/canli-yayin-frame?air=1\r\n#DESCRIPTION KANAL 7\n", "before_files": [{"content": "from __future__ import print_function\nimport re\n\nfrom streamlink.plugin import Plugin\nfrom streamlink.plugin.api import http\nfrom streamlink.plugin.api import useragents\nfrom streamlink.plugin.api import validate\nfrom streamlink.stream import HLSStream\n\n\nclass Kanal7(Plugin):\n    url_re = re.compile(r\"https?://(?:www.)?kanal7.com/canli-izle\")\n    iframe_re = re.compile(r'iframe .*?src=\"(http://[^\"]*?)\"')\n    stream_re = re.compile(r'''tp_file\\s+=\\s+['\"](http[^\"]*?)['\"]''')\n\n    @classmethod\n    def can_handle_url(cls, url):\n        return cls.url_re.match(url) is not None\n\n    def find_iframe(self, url):\n        res = http.get(url)\n        # find iframe url\n        iframe = self.iframe_re.search(res.text)\n        iframe_url = iframe and iframe.group(1)\n        if iframe_url:\n            self.logger.debug(\"Found iframe: {}\", iframe_url)\n        return iframe_url\n\n    def _get_streams(self):\n        iframe1 = self.find_iframe(self.url)\n        if iframe1:\n            iframe2 = self.find_iframe(iframe1)\n            if iframe2:\n                ires = http.get(iframe2)\n                stream_m = self.stream_re.search(ires.text)\n                stream_url = stream_m and stream_m.group(1)\n                if stream_url:\n                    yield \"live\", HLSStream(self.session, stream_url, headers={\"Referer\": iframe2})\n            else:\n                self.logger.error(\"Could not find second iframe, has the page layout changed?\")\n        else:\n            self.logger.error(\"Could not find iframe, has the page layout changed?\")\n\n\n__plugin__ = Kanal7\n", "path": "src/streamlink/plugins/kanal7.py"}], "after_files": [{"content": "from __future__ import print_function\nimport re\n\nfrom streamlink.plugin import Plugin\nfrom streamlink.plugin.api import http\nfrom streamlink.plugin.api import useragents\nfrom streamlink.plugin.api import validate\nfrom streamlink.stream import HLSStream\nfrom streamlink.utils import update_scheme\n\n\nclass Kanal7(Plugin):\n    url_re = re.compile(r\"https?://(?:www.)?kanal7.com/canli-izle\")\n    iframe_re = re.compile(r'iframe .*?src=\"((?:http:)?//[^\"]*?)\"')\n    stream_re = re.compile(r'''video-source\\s*=\\s*['\"](http[^\"']*?)['\"]''')\n\n    @classmethod\n    def can_handle_url(cls, url):\n        return cls.url_re.match(url) is not None\n\n    def find_iframe(self, url):\n        res = http.get(url)\n        # find iframe url\n        iframe = self.iframe_re.search(res.text)\n        iframe_url = iframe and iframe.group(1)\n        if iframe_url:\n            iframe_url = update_scheme(self.url, iframe_url)\n            self.logger.debug(\"Found iframe: {}\", iframe_url)\n        return iframe_url\n\n    def _get_streams(self):\n        iframe1 = self.find_iframe(self.url)\n        if iframe1:\n            iframe2 = self.find_iframe(iframe1)\n            if iframe2:\n                ires = http.get(iframe2)\n                stream_m = self.stream_re.search(ires.text)\n                stream_url = stream_m and stream_m.group(1)\n                if stream_url:\n                    yield \"live\", HLSStream(self.session, stream_url, headers={\"Referer\": iframe2})\n            else:\n                self.logger.error(\"Could not find second iframe, has the page layout changed?\")\n        else:\n            self.logger.error(\"Could not find iframe, has the page layout changed?\")\n\n\n__plugin__ = Kanal7\n", "path": "src/streamlink/plugins/kanal7.py"}]}