1.0 selenium新版本封装驱动
bash
from selenium.webdriver import Chrome
from selenium.webdriver.chrome.options import ChromiumOptions
from selenium.webdriver.chrome.service import Service
def get_chrome_driver(driver_path):
chrome_options = ChromiumOptions()
chrome_options.add_argument("driver_path='./chromedriver.exe'")
# chrome_options.add_argument("--headless")
chrome_options.add_argument("--start-maximized")
chrome_options.add_argument("user-agent='Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36'")
chrome_options.add_argument('--start-maximized') # 最大化运行(全屏窗口),不设置,取元素会报错
chrome_options.add_argument('--disable-infobars') # 禁用浏览器正在被自动化程序控制的提示
chrome_service = Service(driver_path)
chrome_driver = Chrome(options=chrome_options,service=chrome_service)
return chrome_driver
2.0 鼠标操作常用的方法
bash
ActionChains方法列表
click(on_element=None) ------单击鼠标左键
click_and_hold(on_element=None) ------点击鼠标左键,不松开
context_click(on_element=None) ------点击鼠标右键
double_click(on_element=None) ------双击鼠标左键
drag_and_drop(source, target) ------拖拽到某个元素然后松开
drag_and_drop_by_offset(source, xoffset, yoffset) ------拖拽到某个坐标然后松开
key_down(value, element=None) ------按下某个键盘上的键
key_up(value, element=None) ------松开某个键
move_by_offset(xoffset, yoffset) ------鼠标从当前位置移动到某个坐标
move_to_element(to_element) ------鼠标移动到某个元素
move_to_element_with_offset(to_element, xoffset, yoffset) ------移动到距某个元素(左上角坐标)多少距离的位置
perform() ------执行链中的所有动作
release(on_element=None) ------在某个元素位置松开鼠标左键
send_keys(*keys_to_send) ------发送某个键到当前焦点的元素
send_keys_to_element(element, *keys_to_send) ------发送某个键到指定元素