Selenium selenium 操作已打开的浏览器

lyyyyyyy · 2021年09月19日 · 最后由 lyyyyyyy 回复于 2021年09月27日 · 10708 次阅读

经常会遇到调试一个界面的时候,需要走完前面的流程才能到目标界面很麻烦。所以需要让 selenium 去操作已打开 (通过命令行打开) 的界面。

我们先进入 chrome.exe 的目录

cd C:\Program Files (x86)\Google\Chrome\Application
再通过命令行打开浏览器如下图
chrome.exe --remote-debugging-port=9222 --user-data-dir="C:\seleniumData"
--remote-debugging-port 可以指定你想要的端口
 --user-data-dir 可以指定数据存放路径


接着设置 selenium 的 options

chrome_option = Options()
chrome_option.add_experimental_option("debuggerAddress", "localhost:9222")
driver = webdriver.Chrome(options=chrome_option)
driver.get("https://www.baidu.com")

下面是 java 版本

刚才已经打开了百度,接着用 java 去搜索 selenium

package com.quantum.wordDemo;

import org.openqa.selenium.By;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.chrome.ChromeOptions;

public class seleniumDemo01 {

    public static void main(String[] args) {
        ChromeOptions options = new ChromeOptions();
        options.setExperimentalOption("debuggerAddress","localhost:9222");
        ChromeDriver driver = new ChromeDriver(options);
        driver.findElement(By.id("kw")).sendKeys("selenium");
        driver.findElement(By.id("su")).click();
    }
}

共收到 13 条回复 时间 点赞

没看出来怎么就直接打开了目标界面了,这不仅仅是打开了浏览器?

问题是什么呢?

谢谢分享 有空的时候试一下

对 墨妖 回复

不是加了括号里的内容吗。。。

appium 有没有类似的 操作已经打开的 native app 页面?

对 kingkong2017 回复

web 这个是用了 chromeDevTools,appium 的还木有研究过

之前做过类似的,但是真正用来执行用例的时候,各种卡死,遂放弃

playwright 可以很好的解决这种使用场景

这是先通过 selenium 命令行启动浏览器,操作到指定界面,然后在用代码去操作这个已经打开的浏览器的意思吗?

这是 selenium3 还是 selenium4 了?

对 alex 回复

3

对 kuroky 回复

不是,先通过 cmd 命令行启动浏览器,自己手动操作到界面,再用 selenium 去操作。

14楼 已删除
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册。