当前位置: 移动技术网 > IT编程>脚本编程>Python > 关于python的元素定位问题实例讲解

关于python的元素定位问题实例讲解

2018年02月05日  | 移动技术网IT编程  | 我要评论

包卜nba录像,韩国主播完整无损版,路易

关于python的元素定位问题实例讲解。

webdriver 提供了一系列的元素定位方法,常用的有以下几种

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_css_selector()

id=”gs_htif0”
find_element_by_id("gs_htif0")

name=”btnK”
find_element_by_name("btnK")

class=”jhp_big”
find_element_by_class_name("jhp_big")

通过tag 标签名对对元素进行定位:
<p>
find_element_by_tag_name("p")
<form>
find_element_by_tag_name("form")
<input>
find_element_by_tag_name("input")

通过link text 定位元素:
find_element_by_link_text("新闻")
find_element_by_link_text("贴吧")
find_element_by_link_text("一个很长的文字连接")
通partial link text 也可以定位到上面几个元素:
find_element_by_partial_link_text("新")
find_element_by_partial_link_text("吧")
find_element_by_partial_link_text("一个很长的")

用绝对路径定位:
find_element_by_xpath("/html/body/p[2]/form/span/input")

相对路径定位:
find_element_by_xpath("//input[@id=’input’]") #通过自身的id 属性定位
find_element_by_xpath("//span[@id=’input-container’]/input") #通过上一级目录的id 属性定位
find_element_by_xpath("//p[@id=’hd’]/form/span/input") #通过上三级目录的id 属性定位
find_element_by_xpath("//p[@name=’q’]/form/span/input")#通过上三级目录的name 属性定位

通过上面的例子,我们可以看到XPath 的定位方式非常灵活和强大的,而且XPath 可以做布尔逻辑运算,
例如://p[@id=’hd’ or @name=’q’]

from selenium.webdriver.common.keys import Keys
在使用键盘按键方法前需要先导入keys 类包。
下面经常使用到的键盘操作:
send_keys(Keys.BACK_SPACE) 删除键(BackSpace)
send_keys(Keys.SPACE) 空格键(Space)
send_keys(Keys.TAB) 制表键(Tab)
send_keys(Keys.ESCAPE) 回退键(Esc)
send_keys(Keys.ENTER) 回车键(Enter)
send_keys(Keys.CONTROL,'a') 全选(Ctrl+A)
send_keys(Keys.CONTROL,'c') 复制(Ctrl+C)
send_keys(Keys.CONTROL,'x') 剪切(Ctrl+X)
send_keys(Keys.CONTROL,'v') 粘贴(Ctrl+V)

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网