Selenium-Selenium其他自动化操作
一、需求分析
- 需求:
- 打开淘宝网站,在搜索框中输入商品名称,点击搜索;
- 打开滚轮向下滚动;
- 分析:
- 1、定位搜索框按钮,可以查看到需要使用 id进行标签定位,然后输入搜索的内容;
- 2、定位搜索按钮,进行搜索操作,可以查看到需要使用 class 进行标签定位;
- 1、定位搜索框按钮,可以查看到需要使用 id进行标签定位,然后输入搜索的内容;
二、Selenium其他自动化操作示例
2.1、打开tb,进行商品搜索
from selenium import webdriver
import time
# 实例化一个浏览器对象
driver = webdriver.Chrome()
driver.get('https://www.taobao.com/')
# 标签定位
search_input = driver.find_element_by_id('q') # 使用 id 进行定位
# 标签交互
search_input.send_keys('李宁') # 录入商品
# 根据class定位,点击搜索按钮
btn = driver.find_element_by_css_selector('.btn-search')
btn.click()
time.sleep(2)
driver.close()
2.2、实现浏览器滚轮操作
-
在浏览器的 console中执行一段 js 代码可以进行滚轮一页的操作 :
window.scrollBy(0, document.body.scrollHeight)
-
js 代码让Selenium自动执行测试
from selenium import webdriver
import time
# 实例化一个浏览器对象
driver = webdriver.Chrome()
driver.get('https://www.taobao.com/')
# 标签定位
search_input = driver.find_element_by_id('q') # 使用 id 进行定位
# 标签交互
search_input.send_keys('李宁') # 录入商品
# 执行一组js代码
driver.execute_script('window.scrollBy(0, document.body.scrollHeight)')
time.sleep(2)
# 根据class定位,点击搜索按钮
btn = driver.find_element_by_css_selector('.btn-search')
btn.click()
time.sleep(2)
driver.close()
2.3、浏览器执行前进和后退
from selenium import webdriver
import time
# 实例化一个浏览器对象
driver = webdriver.Chrome()
driver.get('https://www.taobao.com/')
# 标签定位
search_input = driver.find_element_by_id('q') # 使用 id 进行定位
# 标签交互
search_input.send_keys('李宁') # 录入商品
# 执行一组js代码
driver.execute_script('window.scrollBy(0, document.body.scrollHeight)')
time.sleep(2)
# 根据class定位,点击搜索按钮
btn = driver.find_element_by_css_selector('.btn-search')
btn.click()
driver.get('https://www.baidu.com')
time.sleep(1)
# 后退
driver.back()
time.sleep(1)
# 前进
driver.forward()
time.sleep(2)
driver.close()
向往的地方很远,喜欢的东西很贵,这就是我努力的目标。