zl程序教程

您现在的位置是:首页 >  后端

当前栏目

Xvfb 虚拟现实库 之 Python 虚拟桌面 pyvirtualdisplay

Python 桌面 虚拟 虚拟现实
2023-09-11 14:13:58 时间

 

如何在Xvfb中运行Selenium?:https://cloud.tencent.com/developer/ask/107705

命令:nohup Xvfb -ac :7 -screen 0 1366x1024x8 -maxclients 512 >/dev/null &

Is there a Windows equivalent to PyVirtualDisplay:https://stackoverflow.com/questions/43270513/is-there-a-windows-equivalent-to-pyvirtualdisplay

PyVirtualDisplay 官方文档:https://pyvirtualdisplay.readthedocs.io/en/latest

Pypi 地址:https://pypi.org/project/PyVirtualDisplay

Selenium Headless Firefox WebDriver using PyVirtualDisplay:https://www.vionblog.com/selenium-headless-firefox-webdriver-using-pyvirtualdisplay

 

三十一  Python分布式爬虫打造搜索引擎Scrapy精讲—chrome谷歌浏览器无界面运行、scrapy-splash、splinter

https://www.cnblogs.com/meng-wei-zhi/p/8182777.html

 

Xvfb是流行的虚拟现实库,可以使很多需要图形界面的程序虚拟运行。pyvirtualdisplay 是该库的 python 封装。

selenium 驱动浏览器需要打开浏览器,而浏览器需要图形化界面。如果你在 liunx 服务器上直接运行肯定会报错,所以可以使用 pyvirtualdisplay 虚拟一个显示器

 

如何在linux命令行无界面下,使用selenium进行自动化测试

配置方法:
1.安装 Xvfb 和 pyvirtualdisplay
        yum install xorg-x11-server-Xvfb
        pip install pyvirtualdisplay
2.安装firefox和selenium
        yum install firefox   或者 yum -y install firefox
        pip install selenium

下载 selenium 对应 Chrome 或者 firefox 的驱动,到这里。环境就配置好了。接下来就可以上代码了。

3.示例代码
from pyvirtualdisplay import Display
from selenium import webdriver
display = Display(visible=0, size=(900, 800))
display.start()
driver = webdriver.Firefox()
driver.get('http://www.haosou.com')
print(driver.title)
driver.quit()
display.stop()

 

 

ubuntu示例

pip install pyvirtualdisplay
sudo apt-get install xvfb


from pyvirtualdisplay import Display
display = Display(visible=0, size=(800, 800))
display.start()
driver = webdriver.Chrome()