0
点赞
收藏
分享

微信扫一扫

python-selenium高级操作

程序员知识圈 2022-05-03 阅读 59

1.下拉选,弹出框,滚动条,异常捕获截图,验证码

下拉选,根据select方式来选

import time

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.select import Select

driver = webdriver.Chrome()
driver.maximize_window()
driver.get("file:///Users/gaoyu/PycharmProjects/pythonProject2/demodelenium/下拉框.html")
# driver.find_element(By.CSS_SELECTOR,"[value = '3']").click()
# time.sleep(2)
# driver.find_element(By.CSS_SELECTOR,"[value = '4']").click()
# 通过select方式来进行选择下拉选择框

# 1.先选择select整个
element = driver.find_element(By.NAME, "select")
select = Select(element)
# 根据index选择
time.sleep(2)
select.select_by_index(5)
time.sleep(2)
# 根据value选择
select.select_by_value("2")
time.sleep(2)
# 根据test来选择
select.select_by_visible_text("611")
time.sleep(2)
driver.quit()

弹出框

import time

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

# 获取弹出框对象
driver = webdriver.Chrome()
driver.maximize_window()
driver.get("file:///Users/gaoyu/PycharmProjects/pythonProject2/demodelenium/弹出框.html")
alert = driver.switch_to.alert
# 获取信息
print(alert.text)
# 同意
alert.accept()
#取消
alert.prompt()
driver.quit()

滚动条

import time

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

# 获取弹出框对象
driver = webdriver.Chrome()
driver.maximize_window()
driver.get("file:///Users/gaoyu/PycharmProjects/pythonProject2/demodelenium/滚动条.html")
time.sleep(2)
#定义js
js = "window.scrollTo(0,2000)"
# 执行js
driver.execute_script(js)
time.sleep(2)
driver.quit()

frame切换

# 进入那个frame界面在退出来
driver.switch_to_frame("frame的name或者id")
driver.switch_to_default_content()

异常捕获截图

try:
    driver = webdriver.Chrome()
    driver.maximize_window()
    driver.get("file:///Users/gaoyu/PycharmProjects/pythonProject2/demodelenium/下拉框.html")
    更多代码
except Exception as e:
    driver.get_screenshot_as_file("路径/文件名字.png")
    raise e

对于重复执行自动化操作可以加时间戳的方式确保不一样

在这里插入图片描述

举报

相关推荐

0 条评论