連絡先の詳細やアドレスの詳細など、ユーザーから詳細を取得する登録ページがあります。登録ボタンをクリックすると、閉じる、試してみてください。私はこれらのボタンにアクセスしたいです。 私はハンドルを切り替えることを試みましたが、私はただ1つのハンドル、すなわちメインハンドルを得ています。 webdriverをのためのコードは次のようになります。Pythonを使用してセレブのwebridverでブートストラップモーダルに切り替える方法
main_window_handle = driver.current_window_handle
print main_window_handle
driver.find_element_by_id("ctl00__mainContent_ucObjRegister_btnRegister").click()
signin_window_handle = None
while not signin_window_handle:
for handle in driver.window_handles:
if handle != main_window_handle:
signin_window_handle = handle
break
print main_window_handle
print signin_window_handle
driver.find_element_by_id("ctl00__mainContent_ucObjRegister_ucObjAddressVerification_btnCancel").click()
btnCancelはclicked.And上記のループが無限ループに入りませんモーダル上に存在しています。
signin_window_handle =なし signin_window_handleないが:これらの2行がありますこの行を削除する必要があります:signin_window_handle: –
@PrakharTrivedi:うん、私はsignin_Windw_handleのためにそのことを理解しました。しかし、signin_window_handleはハンドルの値を取得し、ループから抜け出す必要があります。これはハンドルが1つしかありません –
handle!= main_window_handle:条件が満たされない場合、アクセスは内部に進まずに休憩は起こっていません。 –