【问题标题】:how to Install xvfb and run with python and selenium?如何安装 xvfb 并使用 python 和 selenium 运行?
【发布时间】:2016-04-26 13:43:24
【问题描述】:

我正在尝试使用 Xvfb 运行无头浏览器。到目前为止我遵循的过程
1.安装xvfbsudo apt-get install xvfb
2.创建了virtualenv, 3. 安装 xvfbwrapper
4.运行以下代码

import unittest

from selenium import webdriver
from xvfbwrapper import Xvfb


class TestPages(unittest.TestCase):

    def setUp(self):
        self.xvfb = Xvfb(width=1280, height=720)
        self.addCleanup(self.xvfb.stop)
        self.xvfb.start()
        self.browser = webdriver.Firefox()
        self.addCleanup(self.browser.quit)

    def testUbuntuHomepage(self):
        self.browser.get('http://www.ubuntu.com')
        self.assertIn('Ubuntu', self.browser.title)

    def testGoogleHomepage(self):
        self.browser.get('http://www.google.com')
        self.assertIn('Google', self.browser.title)


if __name__ == '__main__':
    unittest.main(verbosity=2)

但我收到以下错误,即使我尝试使用 sudo 安装它但没有效果。

Traceback (most recent call last):
  File "xvfbwrapper.py", line 4, in <module>
    from xvfbwrapper import Xvfb
  File "/home/ubuntu/unclescrooz/src/robinhood/xvfbwrapper.py", line 4, in <module>
    from xvfbwrapper import Xvfb
ImportError: cannot import name Xvfb

pyvirtualdisplay 也有同样的问题

Traceback (most recent call last):
  File "pyvirtualdisplay.py", line 1, in <module>
    from pyvirtualdisplay import Display
  File "/m4k/projects/scrapper/stock/robinhood/pyvirtualdisplay.py", line 1, in <module>
    from pyvirtualdisplay import Display
ImportError: cannot import name Display

如下代码

from pyvirtualdisplay import Display
from selenium import webdriver

display = Display(visible=0, size=(800, 600))
display.start()

browser = webdriver.Firefox()
browser.get('http://www.google.com')
print browser.title
browser.quit()

display.stop()

【问题讨论】:

  • 你好!我有这个问题。你是怎么解决的?干杯!

标签: python-2.7 python-3.x selenium web-scraping python-import


【解决方案1】:

将您的文件 xvfbwrapper.pypyvirtualdisplay.py 重命名为您导入的模块名称以外的名称。

【讨论】:

    猜你喜欢
    • 2017-11-11
    • 2011-09-05
    • 1970-01-01
    • 1970-01-01
    • 2020-05-14
    • 2019-09-17
    • 1970-01-01
    • 1970-01-01
    • 2016-01-14
    相关资源
    最近更新 更多