Selenium WebDriver线程安全吗?

use*_*958 4 java selenium multithreading

更具体地说,同时对单个WebDriver/WebElement执行多个操作是否安全?即这样的事情

WebDriver driver; //driver initialized somehow
final WebElement elem = driver.findElement(By.cssSelector("#elementID"));

//simplified for example, but in real code I'd be storing the results of these calls
new Thread() {
    @Override
    public void run() {
        elem.isDisplayed();
    }
}.run();
new Thread() {
    @Override
    public void run() {
        elem.isEnabled();
    }
}.run();
Run Code Online (Sandbox Code Playgroud)

我在本地进行交互时没有遇到任何问题,但在对远程硒网格做同样的事情时会遇到间歇性问题.

我不确定我遇到的问题是来自Selenium本身,还是Selenium是好的,这是我正在使用的托管网格提供商的限制. selenium线程是否可以安全地用Python进行抓取?提到硒可能不是线程安全的,但我找不到任何确认.

Sai*_*fur 10

这个问题在这里得到解答

"WebDriver不是线程安全的.话虽如此,如果您可以序列化对底层驱动程序实例的访问,您可以在多个线程中共享引用.这是不可取的.另一方面,您/可以/实例化一个WebDriver每个线程的实例."