Selenium_web自动化元素定位

Posted 此名称已经存在

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Selenium_web自动化元素定位相关的知识,希望对你有一定的参考价值。

1、练习上课所讲的selenium元素定位的八个方法

"""
元素定位
"""
import time
from selenium import webdriver
driver = webdriver.Chrome()
driver.get(url="http://www.baidu.com")
#1.通过id查找元素
#driver.find_element_by_id("kw").send_keys("柠檬班")
#2.通过name去查找
#driver.find_element_by_name("wd").send_keys("python27qi")
#3.通过tag查找
#返回第一个
#ele = driver.find_element_by_tag_name(\'input\')
#ele2 = driver.find_elements_by_tag_name(\'input\')
#print(ele)
#print(ele2)‘

#4.通过class查找
#ele = driver.find_element_by_class_name(\'s_ipt\')

#5.通过链接标签文本进行查找
#ele = driver.find_element_by_link_text("新闻").click()

#6.通过链接标签的部分文本去匹配
#ele = driver.find_element_by_partial_link_text("抗击").click()
#print(ele)

#7.通过xpath来进行定位
driver.find_element_by_xpath("//input[@id=\'kw\']").send_keys("musen")
#8.通过CSS选择器来定位
#driver.find_element_by_css_selector(\'#kw\').send_keys("9998887")
time.sleep(5)
driver.quit()


2、通过selenium启动浏览器,并通过xpath完成下面页面中标识出来的5个元素定位(两个页面任选一个,百度页面上看不到所有元素的同学,就选页面二)

页面一:

 

import time

from selenium import webdriver
#启动Chrome浏览器
driver = webdriver.Chrome()
#打开百度页面
driver.get(url=http://www.baidu.com)
driver.find_element_by_xpath("//a[text()=\'地图\']").click()


time.sleep(10)
driver.quit()

元素一:

driver.get(url=http://www.baidu.com)
driver.find_element_by_xpath("//a[text()=\'地图\']").click()

元素二:

driver.get(url=http://www.baidu.com)
driver.find_element_by_xpath("//a[text()=\'地图\']").click()

 

页面二:

地址:https://voice.baidu.com/act/newpneumonia/newpneumonia/

import time

from selenium import webdriver
#启动Chrome浏览器
driver = webdriver.Chrome()
#打开百度页面
driver.get(url="https://voice.baidu.com/act/newpneumonia/newpneumonia/")

#元素1:百度首页通过文本匹配
#driver.find_element_by_xpath("//a[text()=’百度首页\']")

#元素2:切换地区通过属性
driver.find_element_by_xpath(\'//span[@class="Virus_1-1-257_G4gAvs"]\')
#元素3:现有确诊人数
driver.find_element_by_xpath(\'//div[@class="VirusSummarySix_1-1-257_3wCKWi VirusSummarySix_1-1-257_123ZxM"]\')

#元素4:翻页
driver.find_element_by_xpath(\'//div[@class="VirusSummarySix_1-1-257_szVrQM"]\')
#元素5:累计确诊
driver.find_element_by_xpath(\'//label[@class="Virus_1-1-257_1KG-A3"]\')

time.sleep(10)
driver.quit()

 

以上是关于Selenium_web自动化元素定位的主要内容,如果未能解决你的问题,请参考以下文章

CSS代码片段

CSS代码片段

如何使绝对定位的元素响应?

web自动化测试以及定位元素操作

web自动化测试以及定位元素操作

web自动化测试以及定位元素操作