python+webdirver脚本中添加常用的功能操作

1、添加等待时间

在跑脚本的时候,有的模拟操作需要等待几秒钟,比如打开一个新的页面,这个中间需要稍稍暂停一下,等待新的页面全部加载完,这时候就需要添加等待时间。

from selenium import webdriver
import time  #引入一个时间包,下面进行调用函数

__author__ = 'dll'
#coding=utf-8

from selenium import webdriver
from selenium.webdriver.support.ui import  WebDriverWait
import time #调入time 函数
'''
ff不需要driver,而IE跟Chorme需要专门的driver
初学者注意py严格要求大小写以及缩进
'''
browser = webdriver.Firefox()
browser.get("http://www.baidu.com")
time.sleep(0.3) #休眠0.3秒
browser.find_element_by_id("kw").send_keys("selenium")
browser.find_element_by_id("su").click()
time.sleep(3) # 休眠3秒
browser.quit()

 其中time.sleep(1)是固定时间等待,等待1秒进行下一步操作,也可以进行智能等待,driver.implicitly_wait(30),在30秒的时间范围内智能的等待。

2、打印标题信息

用百度做例子,打开百度首页,打印标题,只需要在browser.get("http://www.baidu.com")后面添加下面一行即可。

print driver.title   #打印页面title

执行结果应该是:  百度一下,你就知道

3、浏览器最大化

4、浏览器设置width,high

5、鼠标的操作:ActionChains 类包含: context_click() 右击; double_click() 双击;drag_and_drop() 拖动

 

__author__ = 'dll'
#coding=utf-8

from selenium import webdriver
from selenium.webdriver.support.ui import  WebDriverWait
from selenium.webdriver.common.action_chains import ActionChains
import time

driver = webdriver.Firefox()
driver .get("http://www.baidu.com")
print "浏览器最大化"
driver.maximize_window()   #将浏览器最大化显示
time.sleep(1)

#浏览器设置width,high,参数数字为像素点
print "设置浏览器宽480、高800显示"
driver.set_window_size(480,800)
time.sleep(1)

#鼠标的操作:点击,模拟按键,清除对象内容,获取元素文本信息,双击,拖动
driver.find_element_by_id("kw").send_keys(u"你好")  #防止出现中文乱码
driver.find_element_by_id("kw").clear()  #清除输入的内容

a=driver.find_element_by_link_text("新闻")
ActionChains(driver).context_click(a).perform() #鼠标进行右击“新闻”
ActionChains(driver).double_click()  #双击
driver.quit()  #关闭当前窗口 

6、键盘按键用法

from selenium.webdriver.common.keys import Keys #需要引入keys 包,通过send_keys()调用按键:
send_keys(Keys.TAB) # TAB
send_keys(Keys.ENTER) # 回车

模拟操作键盘快捷方式:

#ctrl+a 全选输入框内容
driver.find_element_by_id("kw").send_keys(Keys.CONTROL,'a')
time.sleep(3)
#ctrl+x 剪切输入框内容
driver.find_element_by_id("kw").send_keys(Keys.CONTROL,'x')
time.sleep(3)

posted @ 2016-02-20 13:44  Mytesting  Views(226)  Comments(0Edit  收藏  举报