入门Selenium(二)

操作测试对象

鼠标点击和键盘输入

from selenium import webdriver
import time
browser = webdriver.Chrome()
browser.get("http://www.baidu.com/")
# 浏览器最大化
browser.maximize_window()
time.sleep(2)
# send_keys模拟用户在输入框输入要搜索的文字
browser.find_element_by_id("kw").send_keys("西安工业大学")
# click模拟用户用鼠标点击搜索一下
browser.find_element_by_id("su").click()
time.sleep(3)
# 当向在输入框中输入其他内容搜索时,需要先用clear清除内容,再重新输入搜索内容
browser.find_element_by_id("kw").clear()
browser.find_element_by_id("kw").send_keys("Ipad")
browser.find_element_by_id("su").click()
time.sleep(3)
browser.quit()

submit提交表单

查看控件标签的属性,如果有submit,则可以用submit代替click点击按钮

from selenium import webdriver
import time
browser = webdriver.Chrome()
browser.get("http://www.baidu.com/")
browser.maximize_window()
time.sleep(2)
browser.find_element_by_id("kw").send_keys("李白")
browser.find_element_by_id("su").submit()
time.sleep(3)
browser.quit()

text获取元素文本

from selenium import webdriver
import time
browser = webdriver.Chrome()
browser.get("http://www.baidu.com/")
browser.maximize_window()
time.sleep(2)
# 获取文本信息
text = browser.find_element_by_xpath("//*[@id='bottom_layer']/div/p[8]/a").text
# python中的输出语句
print(text)
browser.quit()

添加等待

添加休眠和智能等待

from selenium import webdriver
import time
browser = webdriver.Chrome()
browser.get("http://www.baidu.com/")
browser.maximize_window()
# 调用sleep方法,后面括号中的参数是等待时间,这是一个固定等待,设置多久就等待多久
# time.sleep(3)
# 智能等待 等待时间为[0,6]
# browser.implicitly_wait(6)
browser.implicitly_wait(3)
browser.find_element_by_id("kw").send_keys(u"邓伦 - 百度百科")
browser.find_element_by_id("su").click()
browser.implicitly_wait(10)
browser.find_element_by_link_text(u"邓伦").click()
time.sleep(2)
browser.quit()

打印信息

打印url以及title

from selenium import webdriver
import time
browser = webdriver.Chrome()
browser.get("http://www.baidu.com/")
browser.maximize_window()
time.sleep(3)
browser.find_element_by_id("kw").send_keys(u"邓伦")
browser.find_element_by_id("su").click()
browser.implicitly_wait(6)
browser.find_element_by_partial_link_text(u"邓伦").click()
browser.implicitly_wait(10)
# 获取标题
title = browser.title
# 打印标题
print("title:"+title)
# 获取url
url = browser.current_url
# 打印url,打印的是上一个页面的Url
print("url="+url)
time.sleep(2)
browser.quit()

在这里插入图片描述

浏览器的操作

浏览器放大和缩小

# 放大浏览器
browser.maximize_window()
# 缩小浏览器

设置浏览器宽、高

# 设置浏览器页面的大小
browser.set_window_size(900,1000)

操作浏览器前进、后退

from selenium import webdriver
import time
browser = webdriver.Chrome()
first_url = "http://www.baidu.com/"
browser.get(first_url)
time.sleep(2)
browser.find_element_by_id("kw").send_keys("哈哈")
browser.find_element_by_id("su").click()
time.sleep(2)
# 返回上一次浏览的页面
browser.back()
time.sleep(3)
# 前进到下一个页面
browser.forward()
time.sleep(2)
browser.quit()

控制浏览器滚动条

# 将滚动条滑到页面的最底端
js1 = "var q=document.documentElement.scrollTop=10000"
browser.execute_script(js1)
time.sleep(4)
# 将滚动条滑到页面的最顶端
js2 = "var q=document.documentElement.scrollTop=0"

键盘事件

键盘按键用法

from selenium import webdriver
import time
# 引入keys包
from selenium.webdriver.common.keys import Keys
browser = webdriver.Chrome()
browser.get("http://127.0.0.1:88/zentao/user-login.html")
browser.maximize_window()
time.sleep(2)
# 输入用户名
browser.find_element_by_name("account").send_keys("admin")
# 用tab键将光标移动到密码输入框
browser.find_element_by_name("account").send_keys(Keys.TAB)
time.sleep(8)
# 输入密码
browser.find_element_by_name("password").send_keys("261919Zss")
# 用enter键登录
browser.find_element_by_name("password").send_keys(Keys.ENTER)
time.sleep(3)
browser.quit()

键盘组合键用法

from selenium import webdriver
import time
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.action_chains import ActionChains
browser = webdriver.Chrome()
browser.get("http://www.baidu.com/")
browser.maximize_window()

browser.find_element_by_id("kw").send_keys(u"邓伦")
browser.find_element_by_id("su").click()
browser.implicitly_wait(10)
# 复制
browser.find_element_by_id("kw").send_keys(Keys.CONTROL,'a')
time.sleep(3)
# 粘贴
browser.find_element_by_id("kw").send_keys(Keys.CONTROL,'v')
time.sleep(3)
text = browser.title
browser.find_element_by_id("kw").send_keys(text)
browser.find_element_by_id("su").click()
time.sleep(4)
browser.quit()

鼠标事件

from selenium import webdriver
import time
from selenium.webdriver.common.action_chains import ActionChains
browser = webdriver.Chrome()
browser.get("http://www.baidu.com/")
browser.maximize_window()
time.sleep(3)
browser.find_element_by_id("kw").send_keys("哈哈")
# 定位百度一下按钮
name = browser.find_element_by_id("su")
# 右击
# ActionChains(browser).context_click(name).perform()
# 双击
ActionChains(browser).double_click(name).perform()

time.sleep(3)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值