python+selenium学习笔记:实用技巧一

'''
1-获取当前窗口title
    driver.title  
2-获取当前窗口地址栏url
    driver.current_url

3- 窗口内容标题更新时,title和current_url也会随之而更新
    页面更新时,可以通过查找更新页面的元素来判断页面加载完成,此时获取的title或url为新页面的title或url

    截屏:
    截取整个页面:driver.get_screenshot_as_file(img_path)
    截取单个元素:  web_element screenshot(img_path)
    # img_path是图片路径,类型str

4-切换窗口:
    driver.switch_to.window(handle)
5-如何获取handle?
    通过driver.window_handles  方法获取当前浏览器所有窗口的handle
    通过循环切换窗口判断标题的方法来确定当前窗口是否为目标窗口
    保留当前窗口handle:
    driver.current_window_handle

6-关闭窗口的方法: driver.close()  用于关闭当前窗口


7-对话框处理:
    driver.switch_to.alert
        点击ok	获取文本	点击cancel	输入内容
    alert	accept()	text	N/A	N/A
    confirm	accept()	text	dismiss()	N/A
    prompt	accept()	text	dismiss()	send_keys()
    
    注意浏览器alter和普通html弹出框的区别


8-上传文件:

# 直接发送键盘消息给 当前应用程序,
# 前提是浏览器必须是当前应用
# 此方法只在windows环境有用
#   pip install pypiwin32
import win32com.client
#获取shell对象
shell = win32com.client.Dispatch("WScript.Shell")

# 有的系统要加 '\r'
# 有的系统要加 '\r\n'
#使用shell对象的Sendkeys方法给应用程序发送字符串
shell.Sendkeys(r'E:\test\学习\3selenium学习\6实用技巧\3整个页面截图.png'+'\n')

输入法记得调成英文的,默认中文会导致某些字符输入不进去

注意:这个方法是发送字符串到你当前的焦点程序,所以自动化时不要做其他操作


9-刷新页面,前进,后退:
driver.refresh()
driver.forward()
driver.back()


10-冻结窗口
setTimeout(function(){debugger},3000)


'''''
发布了35 篇原创文章 · 获赞 4 · 访问量 925

猜你喜欢

转载自blog.csdn.net/qq_44891948/article/details/103054579
今日推荐