selenium 入门编程

网页操作

打开一个网页

driver.get("http://www.baidu.com")

定位页面元素

<input type="text" name="pwd" id="pwd_id" />
element = driver.find_element_by_id("pwd_id")
element = driver.find_element_by_name("pwd")
element = driver.find_element_by_xpath("//input[@id='pwd_id']")

# 如果元素未找到, 抛出 NoSuchElementException 异常.

操作文本框

# 输入文字
element.send_keys("python lib")
# 输入文字和一个方向键
element.send_keys("c++ template", Keys.ARROW_DOWN)
# 清空文本框
element.clear()

操作常见标签

# 操作 select
from selenium.webdriver.support.ui import Select
select = Select(driver.find_element_by_name('name'))
select.select_by_index(index)
select.select_by_visible_text("text")
select.select_by_value(value)

# 取消选择
select = Select(driver.find_element_by_id('id'))
select.deselect_all()

# 列出所有被选择的选项
select = Select(driver.find_element_by_xpath("xpath"))
all_selected_options = select.all_selected_options

# 获取所有选项
options = select.options

# 点击from表单的submit按钮
driver.find_element_by_id("submit").click()

动作链

from selenium.webdriver import ActionChains
element = driver.find_element_by_name("source")	# 原始标签
target = driver.find_element_by_name("target")	# 目标位置
action_chains = ActionChains(driver)	# 创建动作链对象
action_chains.drag_and_drop(element, target).perform()	# 执行拖拽动作

操作窗口

# 查看所有已经打开的窗口
for handle in driver.window_handles:
    driver.switch_to_window(handle)

driver.switch_to_window("windowName")	# 切换到 windowName 窗口

操作 frame

driver.switch_to_frame("frameName")	# 切换到 frameName 
driver.switch_to_frame("frameName.0.child") # 切换到子 frame

操作对话框

alert = driver.switch_to_alert()

操作网页 前进 和 后退

driver.forward()
driver.back()
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章