一、webdriver基本使用命令
from selenium import webdriver # 导入webdriver模块
driver= webdriver.Chrome() # 打开Google浏览器
driver.get("https://www.baidu.com") # 打开 网址
#driver.get(r"C:\desktop\text.html") # 打开本地 html页面
try:
title = browser.title # 获取打开网址 的名字
url = browser.current_url # 获取打开网址的url
driver.maximize_window() #将浏览器最大化显示
driver.set_window_size(480, 800) #设置浏览器宽480、高800显示
driver.page_sourse #打印出页面源代码
driver.back() #浏览器后退
driver.forward() #浏览器前进
except:
#print("Oops! That was no valid number. Try again ")
driver.quit() #退出浏览器
driver.close() #关闭这个页面
二、标签导航
普通 定位标签 #查找标签
label1 = browser.find_element_by_id("kw")
label2 = browser.find_element_by_name("wd")
label3 = browser.find_element_by_class_name("s_ipt")
label4 = browser.find_element_by_tag_name("imput")
label5 = browser.find_element_by_link_text("a标签中的内容 准确定位")
label6 = browser.find_element_by_partial_link_text("a标签中的内容 模糊定位 ")
label7= browser.find_element_by_xpath(“放入 copy 标签中的常css路径”)
label8= browser.find_element_by_css_selector(“input=[id='id_name'/name='name_name'/……/]")
标签导航 xpath 标签定位复杂的情况下 考虑使用xpath
XPath即为XML路径语言,它是一种用来确定XML(标准通用标记语言的子集)文档中某部分位置的语言。XPath基于XML的树状结构,有不同类型的节点,包括元素节点,属性节点和文本节点,提供在数据结构树中找寻节点的能力。
# 绝对路径
label = driver.find_element_by_xpath("html/boday/p/input") # 绝对路径 导航
label = driver.find_element_by_xpath("html/boday/p/input[1]") # 绝对路径导航,多个input框,确定第一个input框
# 相对路径
label = driver.find_element_by_xpath("//input") # 相对路径导航 表示 整个文档当中的 input标签 默认为第一个 * 第一个“//” 表示 在整个文档中
label = driver.find_element_by_xpath("//input[2]") # 指定页面中的第二个 input框 没有就报错
# 父节点下找子节点
label = driver.find_element_by_xpath("//form//input") # // 父节点//子节点 * 返回子节点 input
label = driver.find_element_by_xpath("//form//input[2]") # // 父节点//子节点 [2] * 指定 父节点下的 第二个 input子节点
# 通过子节点 定位父节点
label = driver.find_element_by_xpath("//form//input/..") # 返回input的父节点 form 标签
label = driver.find_element_by_xpath("//form//input/.") # 当前节点
# 通过属性查找节点
label = driver.find_element_by_xpath("//input[@id]") # 相对路径导航 找到所有的 input标签 其中有 id属性的标签
label = driver.find_element_by_xpath("//input[@id='1']") # 属性查找 在所有的input标签中 找到 具有 id=1 的input标签
label = driver.find_element_by_xpath("//input[@name='xiahua']")
# 标签统计 countains
label = driver.find_element_by_xpat