资讯动态

【PYTHON】Selenium跨机控制Chrome窗口置顶方案

发布时间:2026/8/26 18:26:51 来源:尧图企业网站定制
这里主要讲的是服务端和客户端分离场景【PYTHON】使用Selenium ChromeDriver执行操作时浏览器置顶B电脑运行Chrome的远端机器简易HTTP服务B电脑操作A电脑Selenium脚本机器B电脑运行Chrome的远端机器简易HTTP服务B机器安装依赖pipinstallpywin32 flaskwindow_service.pyB电脑运行fromflaskimportFlaskimportwin32guiimportwin32con appFlask(__name__)defbring_chrome_foreground():把Chrome窗口提升到前台并且最大化全屏wins[]defenum_callback(hwnd,result_list):titlewin32gui.GetWindowText(hwnd)ifChromeintitle:result_list.append((hwnd,title))win32gui.EnumWindows(enum_callback,wins)forhwnd,titleinwins:# SW_SHOWMAXIMIZED 3直接最大化窗口最小化状态也会直接弹起最大化win32gui.ShowWindow(hwnd,win32con.SW_SHOWMAXIMIZED)win32gui.SetForegroundWindow(hwnd)returnlen(wins)app.route(/bring_chrome_top,methods[GET])defapi_bring_top():countbring_chrome_foreground()return{code:0,msg:ok,chrome_window_count:count}if__name____main__:app.run(host0.0.0.0,port5000,debugFalse)B电脑操作运行python window_service.py防火墙放行5000端口否则A机器访问不通记下B电脑的局域网IP例如192.168.1.100A电脑Selenium脚本机器A机器连接remote chrome成功后发GET请求调用B的接口。importrequestsfromselenium.webdriver.remote.webdriverimportWebDriverfromselenium.webdriver.support.uiimportWebDriverWait# 远端B机器ipB_HOST192.168.1.100B_PORT5000defnotify_bring_chrome_top():A机器发http指令让B本机把Chrome置顶urlfhttp://{B_HOST}:{B_PORT}/bring_chrome_toptry:resprequests.get(url,timeout3)print(通知B机器置顶结果:,resp.json())exceptExceptionase:print(通知B置顶失败:,e)# 业务流程driver:WebDriverconnect_chrome()# 连接B电脑remote‑chromenotify_bring_chrome_top()# 调用B的http接口B本地执行窗口置顶waitWebDriverWait(driver,10)driver.get(https://xxxx)

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价