Java
 Computer >> コンピューター >  >> プログラミング >> Java

Javaを使用してSeleniumWebDriverで子ブラウザウィンドウを閉じる方法は?


SeleniumWebdriverで子ブラウザーウィンドウを閉じることができます。 getWindowHandles およびgetWindowHandleメソッドを使用して、子ウィンドウを処理できます。 getWindowHandles メソッドは、開いているすべてのウィンドウハンドルをSetデータ構造に格納するために使用されます。

getWindowHandleメソッドは、現在アクティブなブラウザウィンドウを保存するために使用されます。ウィンドウハンドルを反復処理するには、イテレータ メソッドが使用されます。 import java.util.Setを追加する必要があります java.util.Listの設定とインポートに対応する およびimportjava.util.Iterator コード内のイテレータに対応するステートメント。

デフォルトでは、ドライバオブジェクトは親ウィンドウの要素にアクセスできます。親ウィンドウから子ウィンドウにフォーカスを切り替えるには、 switchTo()。windowを使用します。 メソッドを実行し、子ウィンドウのウィンドウハンドルIDを引数としてメソッドに渡します。次に、子ウィンドウから親ウィンドウに移動するには、 switchTo()。windowを使用します。 メソッドを作成し、親ウィンドウのハンドルIDを引数としてメソッドに渡します。

コードの実装。

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;
import java.util.List;
import java.util.Set;
import java.util.Iterator;
public class CloseChildWindow {
   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://secure.indeed.com/account/login");
      //implicit wait
      driver.manage().timeouts().implicitlyWait(2, TimeUnit.SECONDS);
      driver.findElement(By.id("login-google-button")).click();
      // window handles
      Set w = driver.getWindowHandles();
      // window handles iterate
      Iterator t = w.iterator();
      String ch = t.next();
      String pw = t.next();
      // switching child window
      driver.switchTo().window(ch);
      System.out.println("Child window title "+ driver.getTitle());
      // close the child browser window
      driver.close();
      // switching parent window
      driver.switchTo().window(pw);
      System.out.println("Parent window title: "+ driver.getTitle());
      driver.quit();

出力

Javaを使用してSeleniumWebDriverで子ブラウザウィンドウを閉じる方法は?


  1. tkinterウィンドウを閉じるにはどうすればよいですか?

    tkinterを使用してアプリケーションを作成するのは簡単ですが、タイトルバーのボタンを使用せずにウィンドウまたはフレームを閉じることが困難になる場合があります。このような場合、 .destroy()を使用できます ウィンドウを閉じる方法。 tkinter属性は互いに独立しているため、ボタンを使用してウィンドウを閉じる別のメソッドを作成できます。 例 #Import the library from tkinter import * #Create an instance of window win = Tk() #Set the geometry of the window win.g

  2. Pythonでphantomjsとseleniumwebdriverを使用してウィンドウサイズを設定するにはどうすればよいですか?

    PythonでPhantomJSとSeleniumWebドライバーを使用してウィンドウサイズを設定できます。 PhantomJSを操作するには、 webdriver.PhantomJSのドライバーオブジェクトを作成する必要があります クラス。 次に、phantomjs.exeドライバーファイルのパスをパラメーターとしてクラスに渡します。次に、ウィンドウサイズを設定するには、 set_window_sizeを使用します。 メソッドを作成し、ディメンションをパラメータとしてメソッドに渡します。 ブラウザのウィンドウサイズを取得するには、 get_window_sizeを使用できます。 メソッド