Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> JavaScript

सेलेनियम का उपयोग करके जावास्क्रिप्ट वाले जटिल पेज के लोड होने की प्रतीक्षा करना


हम सेलेनियम के साथ जावास्क्रिप्ट वाले जटिल पेज के लोड होने की प्रतीक्षा कर सकते हैं। पेज लोड होने के बाद, हम जावास्क्रिप्ट विधि document.readyState को लागू कर सकते हैं और complete लौटने तक प्रतीक्षा कर सकते हैं।

सिंटैक्स

JavascriptExecutor js = (JavascriptExecutor)driver; 
js.executeScript("return document.readyState").toString().equals("complete");

अगला, हम explicit wait अवधारणा का उपयोग करके सिंक्रनाइज़ेशन में यह सत्यापित कर सकते हैं कि पेज किसी कार्रवाई के लिए तैयार है या नहीं। हम तत्व के लिए अपेक्षित स्थिति presenceOfElementLocated की प्रतीक्षा कर सकते हैं। हम संपूर्ण सत्यापन को try catch ब्लॉक के भीतर लागू करेंगे।

उदाहरण

import org.openqa.selenium.By; 
import org.openqa.selenium.WebDriver; 
import org.openqa.selenium.WebElement; 
import org.openqa.selenium.chrome.ChromeDriver; 
import org.openqa.selenium.support.ui.ExpectedConditions; 
import org.openqa.selenium.support.ui.WebDriverWait; 
import org.openqa.selenium.JavascriptExecutor; 

public class PageLoadWt { 
  public static void main(String[] args) { 
    System.setProperty("webdriver.chrome.driver", "C:\\Users\\ghs6kor\\Desktop\\Java\\chromedriver.exe"); 
    WebDriver driver = new ChromeDriver(); 
    driver.get("https://www.tutorialspoint.com/index.htm"); 
    // जावास्क्रिप्ट एक्जीक्यूटर से पेज रेडी स्टेट जांचें 
    JavascriptExecutor j = (JavascriptExecutor)driver; 
    if (j.executeScript("return document.readyState").toString().equals("complete")) { 
      System.out.println("Page loaded properly."); 
    } 
    // अपेक्षित स्थिति presenceOfElementLocated 
    WebDriverWait wt = new WebDriverWait(driver, 3); 
    try { 
      wt.until(ExpectedConditions.presenceOfElementLocated(By.id("gsc-i-id1"))); 
      // तत्व पहचानें 
      driver.findElement(By.id("gsc-i-id1")).sendKeys("Selenium"); 
    } catch (Exception e) { 
      System.out.println("Element not located"); 
    } 
    driver.quit(); 
  } 
}

आउटपुट

सेलेनियम का उपयोग करके जावास्क्रिप्ट वाले जटिल पेज के लोड होने की प्रतीक्षा करना

  1. Java का उपयोग करके Selenium WebDriver के साथ ब्राउज़र लॉग कैप्चर करना Java का उपयोग करके Selenium WebDriver के साथ ब्राउज़र लॉग कैप्चर करना

    परिचयहम Selenium के साथ ब्राउज़र लॉग कैप्चर कर सकते हैं। हमें RemoteWebDriver को ड्राइवर में टाइप कास्ट करना होगा और फिर इसे इनिशियलाइज़ करना होगा। अगला, हमें setLogLevel मेथड का उपयोग करना होगा। import org.openqa.selenium.remote.RemoteWebDriver स्टेटमेंट को RemoteWebDriver के लिए कोड में जोड़ना होग

  1. Selenium WebDriver और Java का उपयोग करके एक विशिष्ट DIV को कैसे स्क्रॉल करें? Selenium WebDriver और Java का उपयोग करके एक विशिष्ट DIV को कैसे स्क्रॉल करें?

    परिचयहम Selenium WebDriver का उपयोग करके एक विशिष्ट DIV को स्क्रॉल कर सकते हैं। Selenium सीधे स्क्रॉल को संभाल नहीं सकता। यह एक विशिष्ट DIV पर स्क्रॉल एक्शन करने के लिए Javascript Executor की मदद लेता है।सबसे पहले हमें xpath या css लोकेटर की मदद से उस विशिष्ट DIV की पहचान करनी होगी जिस तक हमें स्क्र

  1. Python के लिए Selenium WebDriver के साथ पेज लोड होने तक प्रतीक्षा करें Python के लिए Selenium WebDriver के साथ पेज लोड होने तक प्रतीक्षा करें

    हम Selenium WebDriver के साथ पेज लोड होने तक प्रतीक्षा कर सकते हैं। Selenium में एक सिंक्रनाइज़ेशन अवधारणा है जो इम्प्लिसिट और एक्सप्लिसिट वेट का वर्णन करती है। पेज लोड होने तक प्रतीक्षा करने के लिए हम एक्सप्लिसिट वेट अवधारणा का उपयोग करेंगे। एक्सप्लिसिट वेट को इस तरह डिज़ाइन किया गया है कि यह किस