Selenoid 使用

docker-compose.yaml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
version: '3'
services:
selenoid:
image: "aerokube/selenoid"
network_mode: bridge
ports:
- "4444:4444"
volumes:
- "$PWD:/etc/selenoid/" # assumed current dir contains browsers.json
- "/var/run/docker.sock:/var/run/docker.sock"
selenoid-ui:
image: "aerokube/selenoid-ui"
network_mode: bridge
links:
- selenoid
ports:
- "8080:8080"
command: [ "--selenoid-uri", "http://selenoid:4444" ]

browsers.json

1
2
3
4
5
6
7
8
9
10
11
12
{
"chrome": {
"default": "128.0",
"versions": {
"128.0": {
"image": "selenoid/chrome:128.0",
"port": "4444",
"path": "/"
}
}
}
}

demo.py

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import time
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.by import By

chrome_options = Options()
chrome_options.browser_version = '128.0'
chrome_options.set_capability("selenoid:options", {
"enableVNC": True,
"enableVideo": False,
})

driver = webdriver.Remote(
command_executor="http://127.0.0.1:4444/wd/hub",
options=chrome_options
)
driver.maximize_window()
print(driver.session_id)
driver.get("https://www.baidu.com")
driver.find_element(By.ID, "kw").send_keys("淘宝")
time.sleep(10)
driver.close()
driver.quit()

Selenoid 使用
https://kingjem.github.io/2025/01/10/selenoid使用/
作者
Ruhai
发布于
2025年1月10日
许可协议