- Selenium自动化工具
- Selenium
- Web 自动化工具
- Thought Works, Jason Huggins
- Selenium主要模块
- Selenium WebDriver
- Selenium IDE
- Selenium Grid
- Selenium WebDriver
- Web 自动化工具
- IDE
- 搭建Selenium运行环境
- 安装ChromeDriver
- 查看Chrome浏览器的版本
- 根据浏览器版本,下载浏览器驱动http://npm.taobao.org/mirrors/chromedriver
- 将下载的驱动解压到PATH环境变量指定的目录下即可
- 配置Path环境变量
- 计算机->属性->高级系统设置->环境变量->PATH->编辑
- 计算机->属性->高级系统设置->环境变量->PATH->编辑
- 查看Chrome浏览器的版本
- 安装Python的Selenium模块
- pip install selenium
- 补充: 安装python镜像:pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/
- pip install selenium
- 测试系统环境
- demo01_测试安装环境.py
- demo01_测试安装环境.py
- 安装ChromeDriver
- 元素定位
- 定位方式
- ''' id 定位 '''
- element = driver.find_element(By.ID, 'kw')
- element = driver.find_element(By.ID, 'kw')
- ''' name 定位'''
- driver.find_element(By.NAME, 'wd').send_keys('足球')
- driver.find_element(By.NAME, 'wd').send_keys('足球')
- ''' class_name定位 '''
- driver.find_element(By.CLASS_NAME, 's_ipt').send_keys('篮球')
- driver.find_element(By.CLASS_NAME, 's_ipt').send_keys('篮球')
- ''' tag_name 定位'''
- driver.find_element(By.TAG_NAME, 'input').send_keys('天地人')
- driver.find_element(By.TAG_NAME, 'input').send_keys('天地人')
- ''' link_text 定位'''
- driver.find_element(By.LINK_TEXT, '新闻').click()
- 只能用于超链接元素的文本定位
- 精确文本定位(全部的文本都必须匹配)
- driver.find_element(By.LINK_TEXT, '新闻').click()
- ''' partial_link_text定位'''
- driver.find_element(By.PARTIAL_LINK_TEXT, '数读十九届').click()
- 只能用于超链接元素的文本定位
- 模糊文本定位(部分文本匹配就可以)
- driver.find_element(By.PARTIAL_LINK_TEXT, '数读十九届').click()
- ''' xpath 定位 '''
- 通用定位方式,利用元素的xml路径来进行定位
- 绝对定位
- /html/body/div[1]/div[1]/div[5]/div/div/form/span[1]/input
- 绝对定位是从一个 / 开始写
- 对于某个特定的元素来说,它的绝对路径是唯一的
- 可以从浏览器中直接复制: copy full XPATH
- /html/body/div[1]/div[1]/div[5]/div/div/form/span[1]/input
- 相对定位
- //*[@id="kw"]
- 相对定位从2个 // 开始写
- 对于某个特定的元素来说,它的相对路径是不唯一的
- * 是通配符,代表任意元素
- [ ]表示条件
- @表示属性
- driver.find_element(By.XPATH, '//*[@id="kw"]').send_keys('三命通会')
- driver.find_element(By.XPATH, '//*[@id="kw"]').send_keys('三命通会')
- text()表示文本
- driver.find_element(By.XPATH**,** '//*[text()="新闻"]').click()
- driver.find_element(By.XPATH**,** '//*[text()="新闻"]').click()
- contains(),表示包含
- driver.find_element(By.XPATH, '//*[contains(text(),"数读十九届")]').click()
- driver.find_element(By.XPATH, '//*[contains(text(),"数读十九届")]').click()
- @表示属性
- //*[@id="kw"]
- 通用定位方式,利用元素的xml路径来进行定位
- ''' id 定位 '''
- 定位方式
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。