一.selenium定位元素的8种方法:
1.find_element_by_id()
2.find_element_by_name()
3.find_element_by_css()
4.find_element_by_xpath()
5.find_element_by_tag_name()
6.find_element_by_class_name()
7.find_element_by_partial_link_text()
8.find_element_by_link_text()
二.浏览器操作
1.maximize_window() 窗口最大化
2.refresh() 刷新当前页面
3.forward() 前进
4.back() 后退
三.对元素进行操作
1.clear() 清除文本框的内容
2.send_keys() 输入内容
3.click() 单击
4.size 返回元素的尺寸
5.text 返回元素的文本
6.get_attribute(name) 获取元素的属性
7.is _displayed() 获取元素是否可见
8.title 获取当前页面的标题
9.current_url 获取当前页面的URL
四.多表单切换
1.switch_to_frame() 默认可以直接填写表单的id或name
2.switch_to.default_content() 跳回最外层的页面
五.多窗口切换
1.switch_to_window()
from selenium import webdriver import time driver=webdrive.Firefox() driver.get('http://www.baidu.com') #获得百度搜索窗口句柄 search_windows=driver.current_window_handle driver.find_element_by_link_text('登录').click() driver.find_element_by_link_text('立即注册').click() #获得当前打开的窗口的所有句柄 all_handles=driver.window_handles() #进入注册窗口 for handle in all_handles: if handle!=search_windows: driver.switch_to.window(handle) ...... #回到搜索窗口 for handle in all_handles: if handle==search_windows: driver.switch_to.window(handle) ......
六.警告框的处理(javascript所生成的alert,confrim以及prompt)
1.switch_to_alert().text
2.switch_to_alert().accept()
3.switch_to_alert().dismiss()
4.switch_to_alert().send_keys()
七.操作cookie
1.get_cookies()
2.get_cookie(name) 返回字典键为name的cookie对象
3.add_cookie(cookie_dict) 点击cookie,cookie_dict指字典对象
4.delete_cookie(name,optionsString) 删除cookie信息
5.delete_all_cookies 删除所有的cookie信息
八.窗口截图
driver.get_screenshot_as_file("c:/cale/report/1.jpg")
九.关闭窗口
driver.close()
十.关闭浏览器
driver.quite()