个人总结编写python selenium脚本常用代码
1 创建实例调用web devices,打开地址
__author__ = 'man'
'''
总结编写python selenium脚本常用代码
'''
from selenium import webdriver
from selenium.webdriver.support.select import Select
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
from selenium.common import exceptions
from selenium.webdriver import ActionChains
import os
import time
chromedriver_EXE_path = "D:/py_test/Static_tool/chromedriver.exe"
class Man_test():
def __init__(self):
self.chromedriver = chromedriver_EXE_path
os.environ["webdriver.chrome.driver"] = self.chromedriver
self.browser = webdriver.Chrome(self.chromedriver)
def open_web(self):
self.browser = webdriver.Chrome(self.chromedriver)
def open_url(self,urls):
self.browser.get(urls)
time.sleep(1)
self.browser.maximize_window()
time.sleep(1)
'''
关闭浏览器
'''
def close_browser(self):
self.browser.quit()
2 常用交互方法
def click_public_1(self,xpathdata):
self.browser.find_element_by_xpath(xpathdata).click()
def input_public_1(self,xpathdata,inputdata):
self.browser.find_element_by_xpath(xpathdata).send_keys(inputdata)
def get_txt_public_xpath(self,xpathdata):
txt_result = self.browser.find_element_by_xpath(xpathdata).text
return txt_result
def get_txt_public_id(self,iddata):
txt_result = self.browser.find_element_by_id(iddata).text
return txt_result
3 置顶截图交互
'''
置顶截图功能
screenshot_top(save_path)
@save_path 截图存储路径
'''
def screenshot_top(self,save_path):
self.browser.execute_script("""
(function () {
window.scroll(0, 0);
})();
""")
time.sleep(0.5)
self.browser.get_screenshot_as_file(save_path)
4 刷新页面
'''
刷新页面
'''
def f5(self):
self.browser.refresh()
print('刷新页面')
5 多窗口切换
'''
切换窗口
'''
def switch_to_newvip(self):
print(self.browser.window_handles)
self.browser.switch_to.window(self.browser.window_handles[1])
print(self.browser.window_handles)
print("switch_to_newvip"+ str(self.browser.window_handles[1]))
def switch_to_oldvip(self):
print(self.browser.window_handles)
self.browser.switch_to.window(self.browser.window_handles[0])
print("switch_to_oldvip"+ str(self.browser.window_handles[0]))
def switch_pg(self):
window_1 = self.browser.current_window_handle
windows = self.browser.window_handles
for current_window in windows:
if current_window != window_1:
self.browser.switch_to.window(current_window)
6 #屏幕上拉,下拉交互
'''
切换窗口
'''
def top_windos(self):
time.sleep(0.5)
self.browser.execute_script("""
(function () {
window.scroll(0, 0);
})();
""")
time.sleep(0.5)
def next_windos(self,hpx):
time.sleep(0.5)
self.browser.execute_script("""
(function () {
window.scroll(0, hpx);
})();
""")
time.sleep(0.5)
@漫鸽 www.mangenotwork.com