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

सेलेनियम और HTML में iframe

हम सेलेनियम वेबड्राइवर में iframe के साथ काम कर सकते हैं। HTML कोड में एक फ्रेम को <iframe>, <frameset> या <frame> टैग से परिभाषित किया जाता है। एक फ्रेम का उपयोग एक HTML डॉक्यूमेंट को दूसरे HTML डॉक्यूमेंट के अंदर एम्बेड करने के लिए किया जाता है।

सेलेनियम और HTML में iframe

सेलेनियम का डिफ़ॉल्ट रूप से पैरेंट ब्राउज़र ड्राइवर तक एक्सेस होता है। फ्रेम एलिमेंट तक पहुंचने के लिए, ड्राइवर फोकस को मेन ब्राउज़र विंडो से फ्रेम पर शिफ्ट करना होगा। फ्रेम पर शिफ्ट करने के एक से अधिक तरीके हैं:

  • switchTo().frame(id) - फ्रेम की आईडी या नाम को आर्गुमेंट के रूप में पास किया जाता है।
    सिंटैक्स: driver.switchTo().frame("id"), आईडी वाले फ्रेम पर स्विच करना।

  • switchTo().frame(m) - फ्रेम के इंडेक्स को आर्गुमेंट के रूप में पास किया जाता है। इंडेक्स शून्य से शुरू होता है।
    सिंटैक्स: driver.switchTo().frame(0), पेज में पहले फ्रेम पर स्विच करना।

  • switchTo().frame(webelement n) - फ्रेम के वेबएलिमेंट को आर्गुमेंट के रूप में पास किया जाता है।
    सिंटैक्स: driver.switchTo().frame(l), वेबएलिमेंट l वाले फ्रेम पर स्विच करना।

  • switchTo().defaultContent() - फ्रेम से मेन पेज पर फोकस वापस स्विच करना।
    सिंटैक्स: driver.switchTo().defaultContent()

उदाहरण

कोड कार्यान्वयन।

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import java.util.concurrent.TimeUnit;

public class iFrameMethods {
    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://the-internet.herokuapp.com/frames");
        driver.manage().timeouts().implicitlyWait(8, TimeUnit.SECONDS);
        
        // एलिमेंट की पहचान करें और क्लिक करें
        driver.findElement(By.partialLinkText("Nested")).click();
        
        // फ्रेम नाम के साथ फ्रेम पर स्विच करें
        driver.switchTo().frame("frame-bottom");
        WebElement m = driver.findElement(By.cssSelector("body"));
        System.out.println("फ्रेम टेक्स्ट: " + m.getText());
        
        driver.close();
    }
}

आउटपुट

सेलेनियम और HTML में iframe


  1. C# और Selenium: एलिमेंट मौजूद होने तक प्रतीक्षा करें C# और Selenium: एलिमेंट मौजूद होने तक प्रतीक्षा करें

    हम Selenium WebDriver में एलिमेंट मौजूद होने तक एक्सप्लिसिट वेट का उपयोग करके प्रतीक्षा कर सकते हैं। यह मुख्य रूप से तब उपयोग किया जाता है जब किसी एलिमेंट के पेज पर उपलब्ध होने के लिए सिंक्रनाइज़ेशन समस्या होती है।WebDriverWait और ExpectedCondition क्लासेस का उपयोग एक्सप्लिसिट वेट कार्यान्वयन के लिए

  1. C# और Selenium का उपयोग करके माउस पॉइंटर को विशिष्ट स्थान या एलिमेंट पर ले जाएं C# और Selenium का उपयोग करके माउस पॉइंटर को विशिष्ट स्थान या एलिमेंट पर ले जाएं

    हम Selenium WebDriver (C#) में Actions क्लास का उपयोग करके माउस पॉइंटर को विशिष्ट स्थान या एलिमेंट पर ले जा सकते हैं। हमें पहले इस क्लास का एक ऑब्जेक्ट बनाना होगा।किसी एलिमेंट पर जाने के लिए हमें MoveToElement मेथड लागू करना होगा और इस मेथड के पैरामीटर के रूप में एलिमेंट लोकेटर पास करना होगा। अंत मे

  1. Selenium और Python का उपयोग करके एलिमेंट और टेक्स्ट कैसे खोजें? Selenium और Python का उपयोग करके एलिमेंट और टेक्स्ट कैसे खोजें?

    हम Selenium WebDriver के साथ एलिमेंट और उसके टेक्स्ट को ढूंढ सकते हैं। सबसे पहले हमें id, classname, css जैसे किसी भी लोकेटर की मदद से एलिमेंट की पहचान करनी होगी। फिर टेक्स्ट प्राप्त करने के लिए हमें text मेथड की मदद लेनी होगी। सिंटैक्स s = driver.find_element_by_css_selector(h4).text यहां drive