简介

Selenium 是一个用于自动化浏览器操作的强大工具,它可以模拟用户在浏览器中的行为,例如点击、填写表单、导航等。在本指南中,我们将详细介绍如何安装和使用 Python 的 Selenium 库。

安装 Selenium 库

使用以下命令可以通过 pip 安装 Selenium 库:

 pip install selenium

安装 WebDriver

安装selenium之后,我们暂时还不能直接使用脚本去操作浏览器,还需要我们下载浏览器对应的驱动,Chrome,edge,Firefox等不同浏览器需要下载不一样的驱动,同时,驱动也需要对应浏览器的版本,如114版本的Chrome浏览器,驱动也只能是114版本的Chromedriver。

下载 WebDriver 后,将其可执行文件所在的路径添加到系统的环境变量中,以便 Selenium 可以找到它。

使用示例

1. 第一个示例:打开网页

  1.  from selenium import webdriver

  2.   # 创建一个 Chrome 浏览器实例

  3.   driver = webdriver.Chrome()

  4.   # 打开网页

  5.   driver.get("https://www.baidu.com")

  6.   # 关闭浏览器

  7.   driver.quit()

2. 定位元素

使用 Selenium 可以通过多种方式定位页面中的元素,例如 ID、类名、XPath 等。

  1. from selenium.webdriver.common.by import By

  2.   element = driver.find_element(By.ID, "element_id")

  3.   element = driver.find_element(By.CLASS_NAME, "element_class")

  4.   element = driver.find_element(By.CSS_SELECTOR, "css_selector_expression")

  5.   element = driver.find_element(By.XPATH, "//xpath_expression")

3. 填写表单

  1. input_element = driver.find_element(By.ID,"username")

  2.   input_element.send_keys("your_username")

  3.   password_element = driver.find_element(By.ID,"password")

  4.   password_element.send_keys("your_password")

  5.   submit_button = driver.find_element(By.ID,"submit_button")

  6.   submit_button.click()

4. 点击操作

  1. button = driver.find_element(By.ID,"button_id")

  2.   button.click()

5. 等待元素加载

有时候页面元素不会立即加载完毕,需要等待一段时间。可以使用 WebDriverWait 和 expected_conditions 来实现等待。

  1.  from selenium.webdriver.common.by import By

  2.   from selenium.webdriver.support.ui import WebDriverWait

  3.   from selenium.webdriver.support import expected_conditions as EC

  4.   wait = WebDriverWait(driver, 10)

  5.   element = wait.until(EC.presence_of_element_located((By.ID, "element_id")))

通过这个详细的指南,你应该能够开始使用 Selenium 在 Python 中自动化浏览器操作。根据需要,还可以进一步学习如何处理更复杂的操作、处理弹窗、截图等。Selenium 是一个功能强大的工具,可以在自动化测试、爬虫、数据采集等场景中发挥巨大作用。

总结:

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

 

          视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐