selenium+pyautogui实现页面鼠标自动化控制

用于一些重复化的简单鼠标工作

selenium负责创建浏览器实例

pyautogui负责鼠标操作

注意事项:

1.建议使用106版本的谷歌浏览器,安装路径无空格,131版本的谷歌浏览器会强制安装在C:\Program Files之下,导致路劲有空格会报错。

2.提前安装好对应版本的chromedriver.exe

复制代码
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
from bs4 import BeautifulSoup
import urllib.request
import requests
import time
import pyautogui
import os

# 打开cmd,并且在9222端口打开一个谷歌浏览器
os.system('cmd/c "C:\\Users\\181018\\AppData\\Local\\Google\\Chrome\\Application\\chrome.exe --remote-debugging-port=9222"')
time.sleep(1)

# 设置 ChromeDriver 的路径
chrome_driver_path = 'C:\\Users\\181018\\Desktop\\lizhi_huishou\\chromedriver_win32\\chromedriver.exe'
service = Service(chrome_driver_path)

# 创建 Chrome 浏览器实例
driver = webdriver.Chrome(service=service)
# 最大化浏览器
driver.maximize_window()


# 打开网页
url = "https://***.***.com:8443/#/login"
driver.get(url)
time.sleep(2)

# 鼠标操作
pyautogui.dragTo(690,635)
pyautogui.click()
time.sleep(1)
# https不推荐的页面
pyautogui.dragTo(690,775)
pyautogui.click()
time.sleep(3)
# ldap登录
pyautogui.dragTo(1195,795)
pyautogui.click()
time.sleep(1)

# 获取用户名密码输入框的ID,输入用户名密码
username_input = driver.find_element(By.ID,"login_user_name")
username_input.send_keys("你的用户名")
password_input = driver.find_element(By.ID,"login_password")
password_input.send_keys("你的密码")
time.sleep(1)

# 登录
pyautogui.dragTo(1220,730)
pyautogui.click()
time.sleep(8)

pyautogui.click(80,340)
time.sleep(1)
pyautogui.dragTo(760,135)
time.sleep(1)
pyautogui.click(777,200)
time.sleep(1)
pyautogui.click(1777,390)
time.sleep(1)
pyautogui.click(1158,773)
time.sleep(1)

# 脚本完成,等待5秒
time.sleep(5)
# 关闭浏览器
driver.quit()
相关推荐
qq_37215423几秒前
SQL如何避免隐式类型转换导致的慢查询_参数类型对齐与索引失效
jvm·数据库·python
qq_34229582几秒前
MySQL怎样在触发器中引用新旧数据行_NEW与OLD关键字详解
jvm·数据库·python
m0_746752303 分钟前
如何配置Data Guard主备库目录结构不同_DB_FILE_NAME_CONVERT参数转换规则
jvm·数据库·python
weixin_424999367 分钟前
CSS如何解决CSS冲突导致的BUG_使用CSS层叠层特性隔离样式
jvm·数据库·python
2301_816660217 分钟前
将地址转换为可点击的 Google Maps 链接(支持动态生成)
jvm·数据库·python
步辞8 分钟前
rowspan属性跨页表格怎么处理_打印断页兼容建议【方法】
jvm·数据库·python
weixin_458580128 分钟前
Python模型部署怎么做_FastAPI封装模型为RESTful接口
jvm·数据库·python
tjc1990100512 分钟前
如何用 has 与 delete 管理 Map 中的特定键值映射
jvm·数据库·python
2301_8148098618 分钟前
如何通过SSH隧道连接远程数据库_本地端口转发与phpMyAdmin
jvm·数据库·python
2301_8148098622 分钟前
C++如何验证YAML语法格式是否正确_try-catch解析校验用法【实战】.txt
jvm·数据库·python