首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Docker上运行时,文件ChromeDriver不存在

问在Docker上运行时,文件ChromeDriver不存在
EN

Stack Overflow用户
提问于 2022-09-30 07:04:15
回答 2查看 170关注 0票数 0

我试图使用C#中的Azure函数在Docker上运行Selenium。我已经安装了Selenium.WebDriver和Selenium.WebDriver.ChromeDriver nuget软件包。在docker文件中,我还放置了安装Chrome驱动程序的代码,但是当我尝试在代码中创建ChromeDriver时,我得到了无法找到chromedriver的例外情况。

当我列出目录中的所有文件时,我可以看到列出了chromedriver.exe文件:

​

但是当我尝试使用这一行创建一个新的Chrome驱动程序时:

代码语言:javascript
复制
IWebDriver driver = new ChromeDriver(Environment.CurrentDirectory);

我得到以下例外:

/home/site/wwwroot/bin/Debug/netcoreapp3.1/chromedriver文件

不存在。驱动程序可以在http://chromedriver.storage.googleapis.com/index.html下载。

为什么chromedriver.exe文件不被识别?当我在没有Docker的情况下运行相同的代码时,一切都正常。

EN

回答 2

Stack Overflow用户

发布于 2022-09-30 07:31:52

将chromedriver.exe的绝对路径添加到容器路径环境变量

票数 0
EN

Stack Overflow用户

发布于 2022-10-01 13:42:32

通常,Windows可执行文件以.exe结尾,而Linux可执行文件没有文件扩展名。在Linux上可执行的文件是文件权限的结果,而不是某种命名约定的结果。

异常消息中的文件路径使用正斜杠/作为文件路径分隔符,而不是反斜杠\,这使我相信您已经下载了一个与Windows兼容的ChromeDriver,您正试图在Linux机器上运行它。

解决方案:在通过Docker部署时下载Linux驱动程序。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73905107

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档