Python Webdriver API

元素

元素 定位方法
id  find_element_by_id()
name  find_element_by_name()
class name  find_element_by_class_name()
tag name find_element_by_tag_name()
link text  find_element_by_link_text()
partial link text  find_element_by_partial_link_text()
xpath  find_element_by_xpath()
css selector  find_element_by_xpath()


浏览器定位元素方式

 

  1. IE浏览器:跟开发工具一样,操作键盘F12进行查看
  2. Chrome浏览器:跟开发工具一样,操作键盘F12进行查看
  3. Firefox浏览器:进行在添加附件组件中进行添加插件Firebug抓包工具和Firepath进行定位工具

元素定位方法


id和name定位


在浏览器中输入www.baidu.com,然后操作F12键

Python Webdriver API


 
1. 进行查看通过鼠标键点击文本框控件查看属性
2. 通过元素中所带的 id 和 name 属性对元素进行定位name=”wd”/id=”kw”

find_element_by_id("kw")
find_element_by_name(“wd”)


Xpath定位

CSS定位


CSS 可以比较灵活选择控件的任意属性,一般情况下定位速度要比 XPath 快.
 CSS 选择器的常见语法:


常见操作元素方法

 

  •  clear 清除元素的内容,如果可以的话
  •  send_keys 在元素上模拟按键输入
  •  click 单击元素
  •  submit 提交表单
ele = webdriver.find_element_by_id("kw")#查找文本框
ele.clear() #清空百度搜索框
ele.send_keys(‘selenium’)#在搜索框中输入selenium
ele2=webdriver.find_element_by_id("su")#查看百度一下按钮
ele2.submit() #点击百度一下按钮
注: submit()和click()达到的效果一样,只是submit()要求提交对象是一个表单,click()更强调事件的独立性


登录实例

from selenium import webdriver

#通过IE浏览器访问百度
brower = webdriver.Ie()
brower.get("http://172.18.188.66:9690/sos")
#浏览器最大化
brower.maximize_window()
brower.find_element_by_xpath(".//input[@name='userId']").send_keys('admin')
brower.find_element_by_xpath(".//input[@name='password']").send_keys('admin1234')
brower.find_element_by_xpath(".//input[@name='appendcode']").send_keys('6666')
brower.find_element_by_xpath(".//button[@name='login']").click()
brower.find_element_by_link_text('index').click()
brower.find_element_by_link_text('User Setup').click()
brower.quit()