code: def deliver_dashboard(schedule):
      
      dashboard = schedule.dashboard
  
      dashboard_url = _get_url_path(
          'Superset.dashboard',
          dashboard_id=dashboard.id,
      )
  
      # Create a driver, fetch the page, wait for the page to render
      driver = create_webdriver()
      window = config.get('WEBDRIVER_WINDOW')['dashboard']
      driver.set_window_size(*window)
      driver.get(dashboard_url)
      time.sleep(PAGE_RENDER_WAIT)
  
      # Set up a function to retry once for the element.
      # This is buggy in certain selenium versions with firefox driver
      get_element = getattr(driver, 'find_element_by_class_name')
      element = retry_call(
          get_element,
          fargs=['grid-container'],
          tries=2,
          delay=PAGE_RENDER_WAIT,
      )
  
      try:
          screenshot = element.screenshot_as_png
      except WebDriverException:
          # Some webdrivers do not support screenshots for elements.
          # In such cases, take a screenshot of the entire page.
          screenshot = driver.screenshot()  # pylint: disable=no-member
      finally:
          destroy_webdriver(driver)
  
      # Generate the email body and attachments
      email = _generate_mail_content(
          schedule,
          screenshot,
          dashboard.dashboard_title,
          dashboard_url,
      )
  
      subject = __(
          '%(prefix)s %(title)s',
          prefix=config.get('EMAIL_REPORTS_SUBJECT_PREFIX'),
          title=dashboard.dashboard_title,
      )
  
      _deliver_email(schedule, subject, email)
docs: Given a schedule, delivery the dashboard as an email report