Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2268401
  • 博文数量: 293
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 2170
  • 用 户 组: 普通用户
  • 注册时间: 2014-03-31 14:30
个人简介

自己慢慢积累。

文章分类

全部博文(293)

分类: Python/Ruby

2020-07-15 10:30:36

————————————————
版权声明:本文为CSDN博主「youngerXZ」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/z_kitty/java/article/details/103068251

多窗口切换

当在一个窗口中打开链接跳转到另外一个窗口时如何操作新窗口?


点击(此处)折叠或打开

  1. from selenium import webdriver

  2. driver = webdriver.Chrome()
  3. driver.get('')
  4. driver.find_element_by_link_text('hao123新闻').click()
  5. # 获取当前页面的title(光标聚焦在前一个页面)
  6. t = driver.title

  7. # 获取当前页面的handle
  8. h1 = driver.current_window_handle
  9. # 获取所有窗口的handle
  10. ha = driver.window_handles

  11. # 切换光标到新窗口
  12. # 1.获取新窗口的handle
  13. h_new = driver.window_handles[-1]
  14. # 2.切换到新的窗口
  15. driver.switch_to.window(h_new)
  16. # 关闭新窗口
  17. driver.close()

  18. #关闭浏览器
  19. driver.quit()

Alert弹窗

a = driver.switch_to.alert 切换到alert

a.accept() # 点击确定

t = a.text # 获取弹窗上的文本


点击(此处)折叠或打开

  1. from selenium import webdriver
  2. from selenium.webdriver.common.action_chains import ActionChains
  3. import time


  4. driver = webdriver.Chrome()
  5. driver.get("")
  6. # 鼠标移动到设置按钮
  7. mouse = driver.find_element_by_link_text("设置")
  8. ActionChains(driver).move_to_element(mouse).perform()
  9. time.sleep(2)
  10. driver.find_element_by_link_text("搜索设置").click()
  11. time.sleep(2)

  12. # 方法1:通用的,先展开再选项
  13. driver.find_element_by_id("nr").click()
  14. time.sleep(2)
  15. driver.find_element_by_xpath(".//*[@id='nr']/option[3]").click()
  16. time.sleep(2)
  17. driver.find_element_by_id("nr").click()
  18. time.sleep(2)

  19. # 点击保存设置
  20. driver.find_element_by_link_text("保存设置").click()

  21. # 显示弹窗中的内容
  22. print(driver.switch_to.alert.text)

  23. driver.switch_to.alert.accept() # 确定
  24. driver.switch_to.alert.dismiss() # 取消
  25. driver.switch_to.send_keys("输入内容") # 在弹窗中输入内容

  26. time.sleep(2)
  27. driver.quit()



阅读(2254) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~