一. find_element_by_****的方式
首页在网页上鼠标右键选择检查并点击,查看需要定位的元素。 https://www.baidu.com 以百度为例
导入模块的:
from selenium import webdriver
1、id定位: find_element_by_id()
2、name定位: find_element_by_name()
3、class定位:find_element_by_class_name()
4、tag定位:find_element_by_tag_name()
5、link定位:find_element_by_link_text() #此种方法是专门用来定位文本链接的,比如百度首页右上角有“新闻”,“hao123”,“地图”等链接,是网页html中<a>对应的文字内容
6、partial_link定位:find_element_by_partial_link_text() #文本链接中的部分内容
7、xpath定位:find_element_by_xpath() #页面元素的检查页面,可以选中定位元素,然后右键,选择copy,下面的Xpath看看写xpath的思想
8、CSS定位:find_element_by_css_selector()
复数的定位就是将上面的element改成elements,如:find_elements_by_xpath()
二、 By定位方式
By定位的方式可以更好的实现分层的代码逻辑,所以比较推荐使用
将上面find_element_by_xpath(‘****’) 这种显示的定位写成: find_element(By.Xpath, '****')
需要引入的模块: from selenium.webdriver.common.by import By
page Object中推荐这种,形式,具体可以参考:https://www.cnblogs.com/yufeihlf/p/5764099.html