title: Selenium wait visibility_of_all_elements_located times out
body: <p>I'm testing how to get all the results in a search results page to learn how to use Selenium. When logged into the site, I can see full source for this specific page in just a normal browser, including the div for a line which finishes the page.</p>
  
  <p>With a longer results set of course, normal browser won't show, as Javascript loaded lazily, so I looked to find a way for Selenium to wait until all the results loaded.</p>
  
  <p>I based below on wait code at: <a href="https://selenium-python.readthedocs.io/waits.html" rel="nofollow noreferrer">https://selenium-python.readthedocs.io/waits.html</a></p>
  
  <p>Following throws timeout error for this specific page:</p>
  
  <pre><code>try:
      element = WebDriverWait(driver,100).until(EC.visibility_of_all_elements_located((By.CLASS_NAME, "_3t0c")))
  
  finally:
      print('done with webdriver wait anyway')
  </code></pre>
  
  <p>Error thrown is:</p>
  
  <pre><code>in &lt;module&gt;
      element = WebDriverWait(driver, 100).until(EC.visibility_of_all_elements_located((By.CLASS_NAME, "_3t0c")))
    File "..longFilePath....\lib\site-packages\selenium\webdriver\support\wait.py", line 80, in until
      raise TimeoutException(message, screen, stacktrace)
  selenium.common.exceptions.TimeoutException: Message:
  </code></pre>
  
  <p>with nothing showing after <code>Message:</code></p>
  
  <p>EDIT:
  Below error is different one due to missing brackets as pointed out below @QHarr thanks:</p>
  
  <pre><code>in &lt;module&gt;
      element = WebDriverWait(driver,30).until(EC.visibility_of_all_elements_located(By.CLASS_NAME, "_3t0c"))
  TypeError: __init__() takes 2 positional arguments but 3 were given
  </code></pre>
  
  <p>NB if I comment out this try loop, I can still get all the results on this page.</p>
  
  <p>Otherwise, I tried getting Selenium to wait for the end of results div class, also timeout error at timeout = 100, I can see page loading in probably less than 20 seconds in Selenium.</p>
  
  <p>But I just tried with different  class= "_32mo", which also seems to have one per name in the list, and this apparently does not time out.</p>
  
  <p>I'm new to Selenium and indeed newish to web-scraping, I'm just curious, can anyone explain what might be going on?</p>