##悩んでいる事
Seleniumを使わなくても実現できればそれでもよいですが、
現在開いているタブを別ウィンドウで開く方法が知りたいです。
アクティブになっているタブをドラッグする
適当な場所にドロップする
こうすることで、元のウィンドウで開いていたセッションを保持しつつ別ウィンドウで開きなおすことができます。
これと同等の動作を実装する事はできますか?
##背景
以前、以下のような質問をさせて頂きました。
【C#】Seleniumで高速に他のタブを閉じたい
本来達成したい事は、現在開いているタブ以外を高速で閉じることです。
愚直に書くと、以下の様になるとおもいますがこれだと1タブ閉じるのに1.1秒程掛かってしまい話になりません。
C#
1public static void CloseCurrentTabExcept(this RemoteWebDriver webDriver, CancellationToken? cancellationToken = null) 2{ 3 var currentWindow = webDriver.CurrentWindowHandle; 4 5 foreach (var windowHandle in webDriver.WindowHandles.Reverse()) 6 { 7 if (cancellationToken.HasValue 8 && cancellationToken.Value.IsCancellationRequested) 9 { 10 break; 11 } 12 13 if (windowHandle == currentWindow) continue; 14 webDriver.SwitchTo().Window(windowHandle).Close(); 15 } 16 17 //操作対象を現在のタブに戻す 18 webDriver.SwitchTo().Window(currentWindow); 19}
そこで、今開いているタブを別ウィンドウで開き、元のウィンドウを閉じるという操作をしてやれば高速化が図れるのでは?と考えてこのような質問をさせて頂きました。
回答1件
あなたの回答
tips
プレビュー