Heim  >  Artikel  >  Web-Frontend  >  selenium学习笔记(xpath和css定位)_html/css_WEB-ITnose

selenium学习笔记(xpath和css定位)_html/css_WEB-ITnose

WBOY
WBOYOriginal
2016-06-24 11:19:451418Durchsuche

简单的介绍下xpath和css的定位

理论知识就不罗列了

还是利用博客园的首页、直接附上代码:

这个是xpath

 1 #!/usr/bin/env python 2 # -*- coding: utf_8 -*- 3  4 from learn_webdriver import Webdriver 5 from selenium import webdriver 6 from selenium.webdriver.common.action_chains import ActionChains 7 from time import sleep 8  9 browser_chrome = webdriver.Chrome(Webdriver.chrome())10 browser_chrome.get("http://www.cnblogs.com/")11 12 sleep(2)13 ActionChains(browser_chrome).move_to_element(browser_chrome.find_element_by_xpath(".//li[@id='cate_item_2']")).perform()14 # 鼠标悬停在左侧“编程语言”导航栏上15 browser_chrome.find_element_by_xpath(".//a[@href='/cate/python/']").click()16 sleep(2)17 browser_chrome.quit()

XPath 是一门在 XML 文档中查找信息的语言

使用的是函数是  find_element_by_xpath

这里总结了xpath的表达式:

表达式

说明

案例

节点名称

选取节点下所有子节点

body

body 下所有子节点

/

从根节点选取

body/div

body 下所有 div 节点

//

匹配选择节点

不考虑位置

//div

不考虑位置的 div 节点

.

当前节点

..

当前节点的父节点

@

选取属性

.//li[@id='cate_item_2']

li节点 且属性id=cate_item_2

下面是css

 1 #!/usr/bin/env python 2 # -*- coding: utf_8 -*- 3  4 from learn_webdriver import Webdriver 5 from selenium import webdriver 6 from selenium.webdriver.common.action_chains import ActionChains 7 from time import sleep 8  9 browser_chrome = webdriver.Chrome(Webdriver.chrome())10 browser_chrome.get("http://www.cnblogs.com/")11 12 sleep(2)13 ActionChains(browser_chrome).move_to_element(browser_chrome.find_element_by_css_selector("li[id = 'cate_item_2']")).perform()14 # 鼠标悬停在左侧“编程语言”导航栏上15 browser_chrome.find_element_by_css_selector("a[href = '/cate/python/").click()16 sleep(2)17 browser_chrome.quit()

css更加灵活一些

css使用的函数是 find_element_by_css_selector

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn