gpt4 book ai didi

firefox - 为什么 firefox 不会在 redhat 5.6 上的 selenium 2 webdriver 下启动

转载 作者:行者123 更新时间:2023-12-04 12:42:34 25 4
gpt4 key购买 nike

我想知道是否有人对我如何找出我的原因有任何想法
似乎可以通过 selenium webdriver 运行 firefox。什么
发生在我运行时:

self.driver=webdriver.Firefox()

我的桌面上有一个空白对话。我在 Redhat 5.6 上运行并且
我的 Selenium 版本是 2.21.3。我尽可能地调试了代码
并且从我可以确定的代码在调出后卡住
firefox_binary 模块中以下代码的空白对话框:
Popen([self._start_cmd, "-slient"], stdout=PIPE, stderr=STDOUT, env=self._filefox_env).wait()

我打开了一个 cmd 提示符并手动运行了上述命令
并且没有出现这样的空白对话框。这会让我觉得它
不是 Firefox 错误。我找不到这个错误会在哪里
出现。有任何想法吗?

更新

我安装了 centos 6 并安装了 firefox 10.0.6 和 selenium webdriver 使用该版本

更新

除了使用 centos 6,我还需要在 redhat 上解决这个问题,所以这里有更多细节和我发现的内容。我将为此提供赏金,因为它需要解决:

我对此进行了更多研究,发现问题出在使用 32 位库的 selenium 上。
我在使用 Firefox ESR 10.0.6(64 位)的 Redhat Enterprise Linux Server 版本 5.6 (x86_64) 上有 selenium 版本 2.25.0。
我更改了 firefoxBinary 类中的 _start_from_profile_path 方法,以查看问题出在哪里:
p=open("/tmp/ffoutput.txt", "w+")
Popen([self._start_cmd, "-silent"], stdout=p, stderr=STDOUT, env=self._firefox_env).communicate()

我跟踪了/tmp/ffoutput.txt
我发现 selenium 正在尝试使用 32 位库:
Failed to dlopen /usr/lib/libX11.so.6
dlerror says: /usr/lib/libX11.so.6: wrong ELF class: ELFCLASS32

此消息连续出现,Firefox 挂起并显示一个空白对话框。我用谷歌搜索了这个问题,发现有些人提示但没有解决方案(我尝试在移动 32 位库后将 64 位库软链接(soft link)到 32 位库目录,但这导致 geko 崩溃,我尝试将连续错误发送到/dev/null 但这没有解决任何问题)。

最佳答案

如果您指的是 Selenium 中报告的此问题
http://code.google.com/p/selenium/issues/detail?id=2852

在 64 位 linux 发行版上的解决方法是发出以下命令:

sudo mv /usr/lib/libX11.so.6 /usr/lib/libX11.so.6.old
sudo ln -s /usr/lib64/libX11.so.6.3.0 /usr/lib/libX11.so.6

这在我的盒子上对我有用。

关于firefox - 为什么 firefox 不会在 redhat 5.6 上的 selenium 2 webdriver 下启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10683834/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com