いつも大変お世話になっております。
表題の件ですが、以下内容にて上手く行かず、ご教示頂けないでしょうか。
・印刷業務を自動化する
①(chromeで) あるウェブページを開き、印刷ボタンを押す
②新しく開く印刷ダイアログの印刷ボタンを押す
①までは動作できているようなのですが、②に移りません。
下記コードで実行しております。
(java version "15.0.1")
java
1import java.util.Set; 2 3import org.openqa.selenium.By; 4import org.openqa.selenium.WebDriver; 5import org.openqa.selenium.chrome.ChromeDriver; 6 7public class WebPrint { 8 9 public WebPrint() { 10 //webページにアクセス 11 WebDriver web_page_dr = new ChromeDriver(); 12 web_page_dr.get("-----目的のURL-----"); 13 14 //3秒待つ 15 try { 16 Thread.sleep(3000); 17 } catch(InterruptedException error) { 18 error.printStackTrace(); 19 } 20 21 //今開いているページのハンドルを取得する 22 String currentHandle = web_page_dr.getWindowHandle(); 23 //今開いているページの印刷ボタンをクリックする 24 web_page_dr.findElement(By.xpath(-----今開いているページの印刷ボタンxpath-----)).click(); 25 26 //新しく開いた印刷ダイアログを含め、ウィンドウリストを作成 27 Set<String> windowList = web_page_dr.getWindowHandles(); 28 29 //新しく開いた印刷ダイアログに着目 30 for (String window : windowList) { 31 if (!currentHandle.equals(window)) { 32 web_page_dr.switchTo().window(window); 33 } 34 } 35 36 //印刷ダイアログの印刷ボタンを押す 37 web_page_dr.findElement(By.xpath(-----印刷ダイアログの印刷ボタンxpath-----)).click(); 38 39 40 41 } 42 43} 44
つたない箇所等申し訳御座いませんが、宜しくお願い致します。
あなたの回答
tips
プレビュー