code: def _fetch_img_tuples_webdriver(url:str, format:str='jpg', n_images:int=150) -> list:
      
      try:
          from selenium import webdriver
          from selenium.webdriver.common.keys import Keys
      except:
          print("""Looks like you're trying to download > 100 images and `selenium`
                  is not installed. Try running `pip install selenium` to fix this. 
                  You'll also need chrome and `chromedriver` installed.""")
      options = webdriver.ChromeOptions()
      options.add_argument("--headless")
      try: driver = webdriver.Chrome(chrome_options=options)
      except: print("""Error initializing chromedriver. 
                      Check if it's in your path by running `which chromedriver`""")
      driver.set_window_size(1440, 900)
      driver.get(url)
  
      for i in range(n_images // 100 + 1):
          driver.execute_script("window.scrollTo(0, document.body.scrollHeight)")
          time.sleep(0.5 + random.random()/2.0)
  
      n_available = len(driver.find_elements_by_css_selector("div.rg_meta"))
      if n_available < n_images:
          raise ValueError(f"Requested {n_images} images, but only found {n_available}.")
  
      html = driver.page_source
      driver.close()
      return _html_to_img_tuples(html, format=format, n_images=n_images)
docs: Parse the Google Images Search for urls and return the image metadata as tuples (fname, url).
      Use this for downloads of >100 images. Requires `selenium`.