我需要使用 Firefox 进行网页抓取。我正在使用WWW::Mechanize::Firefox。所以我需要安装 Firefox 和 Mozrepl,但是我安装在没有 GUI 桌面环境的 vps 上,并且遇到了 Firefox 需要 GUI/图形驱动程序的问题。
perl 脚本将使用 cronjob 运行。
我怎样才能做到这一点?
我需要使用 Firefox 进行网页抓取。我正在使用WWW::Mechanize::Firefox。所以我需要安装 Firefox 和 Mozrepl,但是我安装在没有 GUI 桌面环境的 vps 上,并且遇到了 Firefox 需要 GUI/图形驱动程序的问题。
perl 脚本将使用 cronjob 运行。
我怎样才能做到这一点?
从文档(WWW::Mechanize::Firefox::FAQ):
我需要 X 会话来运行 Firefox 吗?
是的。
如果您运行的是 unixish 操作系统,例如 OSX 或 Ubuntu 或其他 Linux 发行版,那么 Firefox 将连接到您的 X 服务器并在那里显示一个窗口。如果您不希望 Firefox 实际显示在您的显示器上,许多人通过在与主 X 服务器分开的另一台 X 服务器上运行 Firefox 取得了成功,例如 Xvfb。
就个人而言,我更喜欢有一个不需要窗口环境的“headless Firefox”。到目前为止,我不知道这实际上存在。
所以是的,您需要有一个可用的 X 会话。使用 ssh 启用 XForwarding,以便您可以在本地计算机上查看远程 GUI 桌面。然后通过包管理安装 Firefox,然后在 Firefox 中安装 MozRepel。完成此操作后,请确保启用 MozRepel 插件。然后使用 cpan 安装其余部分:
cpan WWW::Mechanize::Firefox