0

下面是我在 FreeBSD 中编写的代码。在这段代码之前,我做了

pkg install xorg-vfbserver

但在此之后我不知道要设置哪个环境变量。就像在 Ubuntu 中一样,在使用这个程序之前你必须这样做

apt-get install xvfb
export DISPLAY = :1


在 FreeBSD 中,要设置的环境变量是什么?我阅读了USES = DISPLAY,但我无法理解,因为没有太多关于它的信息。正因为如此,Firefox 启动和关闭



from pyvirtualdisplay import Display
from selenium import webdriver

try:
        display = Display(visible=0, size=(800,600))
        display.start()
except:
        print "no virtual display found"


driver = webdriver.Firefox()

driver.get('www.google.com')

driver.close()
4

1 回答 1

1

安装 X 虚拟框架

 sudo pkg install xorg-vfbserver
 sudo pkg install xkeyboard-config
 sudo pkg install xkbcomp
 sudo pkg instal x11-fonts/xorg-fonts

Firefox 安装和机器 ID 生成

sudo pkg install firefox
dbus-uuidgen > machine-id
sudo mv machine-id /etc/

取决于下面的 shell 用于 bash。在 .bashrc 或 .cshrc 文件中更好,这样每当你启动一个新的终端环境变量 DISPLAY 就会被设置

export DISPLAY=:1

在 tcsh 的情况下。有时 tcsh 是 FreeBSD 中的默认 shell

setenv DISPLAY :1

启动 Xvfb 并在后台发送

nohup Xvfb :1 -screen 0 800x600x16 &

现在你甚至不需要在 python 中使用 pyvirtualdisplay 了。只需使用网络驱动程序。

from selenium import webdriver

driver = webdriver.Firefox()
driver.get('http://www.google.com')
driver.close()
于 2016-01-05T15:00:00.677 回答