"如何在Docker容器内使用selenium和webdriver访问运行在http://127.0.0.1:8090/的本地服务器?"

2024-06-14 18:18:24 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在docker映像上编写selenium python测试。 目前,我有一个服务器在本地主机上运行,使用urlhttp://127.0.0.1:8090/如何使用selenium访问本地主机chrome浏览器。这是我写的代码,但是它没有将我的docker映像连接到本地主机。在

from selenium import webdriver
chrome_path = r"/exabgp/chromedriver.exe"
driver = webdriver.Chrome(chrome_path)
driver.get("http://127.0.0.1:8090/")
driver.find_element_by_xpath("""//{*0id="sss0"}/li/{19}/a***).click()

Tags: pathdocker代码fromimport服务器driverselenium
1条回答
网友
1楼 · 发布于 2024-06-14 18:18:24

您可以使用From inside of a Docker container, how do I connect to the localhost of the machine?中提到的解决方案

或者

运行容器时使用 add-host

docker run  add-host `myapp:<IPOfyourAppServer>` ....

然后在你的代码中使用

^{pr2}$

编辑-1

如果使用docker-compose,则需要使用extra_hosts选项

services:
  myapp:
    extra_hosts:
      - "myapp:192.168.0.10"

相关问题 更多 >