Selenium Webdriver Python - implicit wait is not clear to me
<p>Other people have asked this question and there are some answers but they do not clarify one moment. Implicit wait will wait for a specified amount of time if element is not found right away and then will run an error after waiting for the specified amount of time. Does it mean that implicit wait checks for the element the very first second and then waits for the specified time and checks at the last second again? </p>

<p>I know that explicit wait polls the DOM every 500ms. What is the practical use of implicit wait if tests take longer with it? </p>

<p><strong>Implicit Wait</strong> is internal to selenium. You set it once while initializing. Then every time web driver tries to look for a element it will look for that elmemt continiously (with some polling) presence till 'implicit wait' timer expires. If the element is found then it resumes execution otherwise throws <code>NoSuchElement</code> exception. So it it founds it on first second it will come out from wait loop else if it does not find element on last second it will throw exeception.</p>

<p><strong>Explicit Wait</strong> Is used for the scenario where Its required to wait for certain condition to be True. For e.g visibility of element. Its scope is limited for that particular call only.</p>

<p>You can look for <a href="http://www.seleniumhq.org/docs/04_webdriver_advanced.jsp" rel="nofollow">Selenium documentation</a> for more details and examples</p>

python selenium selenium-webdriver