搬运:python构建一个Selenium脚本
搬运:python构建一个Selenium脚本 搬运selenium手册的一篇,作笔记备忘。 逐步构建一个Selenium脚本的说明 当你完成 Selenium安装 后, 便可以开始书写Selenium脚本了. 八个基本组成部分 Selenium所做的一切, 就是发送给浏览器命令, 用以执行某些操作或为信息发送请求. 您将使用Selenium执行的大部分操作, 都是以下基本命令的组合 点击 “View full example on GitHub” 的链接以查看上下文中的代码. 1. 使用驱动实例开启会话 关于如何启动会话,请浏览我们的文档 驱动会话 1driver = webdriver.Chrome() 2. 在浏览器上执行操作 在本例中, 我们 导航 到一个网页. xxxxxxxxxx 1 1 driver.get(\"https://www.selenium.dev/selenium/web/web-form.html\") 3. 请求 浏览器信息 您可以请求一系列关于浏览器的信息 , 包括窗口句柄、浏览器尺寸/位置、cookie、警报等. xxxxxxxxxx 1 1 title = driver.title 4. 建立等待策略 将代码与浏览器的当前状态同步 是Selenium面临的最大挑战之一, 做好它是一个高级主题. 基本上, 您希望在尝试定位元素之前, 确保该元素位于页面上, 并且在尝试与该元素交互之前, 该元素处于可交互状态. 隐式等待很少是最好的解决方案, 但在这里最容易演示, 所以我们将使用它作为占位符. 阅读更多关于等待策略 的信息. xxxxxxxxxx 1 1 driver.implicitly_wait(0.5) 5. 发送命令 查找元素 大多数Selenium会话中的主要命令都与元素相关, 如果不先找到元素, 就无法与之交互. xxxxxxxxxx 2 1 text_box = driver.find_element(by=By.NAME, value=\"my-text\") 2 submit_button = driver.find_element(by=By.CSS_SELECTOR, value=\"button\") 6. 操作元素 对于一个元素, 只有少数几个操作可以执行, 但您将经常使用它们. xxxxxxxxxx 2 1 text_box.send_keys(\"Selenium\") 2 submit_button.click() 7. 获取元素信息 元素存储了很多被请求的信息. xxxxxxxxxx 2 1 message = driver.find_element(by=By.ID, value=\"message\") 2 text = message.text 8. 结束会话 这将结束驱动程序进程, 默认情况下, 该进程也会关闭浏览器. 无法向此驱动程序实例发送更多命令. 详见 Quitting Sessions. xxxxxxxxxx 1 1 driver.quit() 搬运来源:https://www.selenium.dev/zh-cn/documentation/webdriver/getting_started/first_script/