问题标签 [pyvirtualdisplay]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - pyvirtualdisplay:更改可见性
我想打开/关闭使用创建的显示的可见性pyvirtualdisplay
,或者将其最小化并使用 python 将其带回屏幕。
不幸的是,似乎没有办法做到这一点,并且display.visible
在显示器初始化后进行更改是没有效果的。有什么方法可以做到这一点,也许使用一些替代包?
最后,我想隐藏和显示一个通过selenium
.
python - Selenium 不能在服务器上工作,因为它在本地机器上工作
我最近完成了我的 Selenium Python 刮板。当我在我的个人机器上运行它时它工作得很好,但是当我在服务器上运行它时结果不一样。在服务器上,我正在使用无头运行pyvirtualdisplay
这是我的 pyvirtualdisplay 代码。
在本地机器上运行时,它完全抓取了由 JavaScript 生成的 HTML,但是当我在我的服务器上运行它时,它不会抓取由 JavaScript 生成的 HTML 内容,所以我最终只得到了一个没有 JS 的部分页面生成的内容。
更新: 我还根据使用 Selenium 的建议截取了屏幕截图。截图显示页面部分加载,JS的内容没有加载到屏幕上。
python - AWS-EC2 或 Pythonanywhere 等服务上的 selenium 驱动程序的最大数量是多少
使用 python-selenium 和 pyvirtualdisplay,我想在远程服务器上同时打开大约 10 个不同的 Firefox 浏览器。但是,在 AWS 和 pythonanywhere 上,firefox 驱动程序在打开的第五个窗口左右开始抛出异常:
WebDriverException:消息:浏览器似乎在我们可以连接之前已经退出
我永远无法在任何一项服务上同时打开超过 5 个或 6 个窗口。这是一个内存问题(弹性架构不是要解决这个问题吗?)?虚拟显示库的限制?
如果我尝试在我的(非常)旧笔记本电脑上本地打开多达 15 个窗口,似乎没有问题。无论如何,在不使用多个帐户的情况下解决这个问题?这是我要执行的代码:
python - 使用 python、selenium 和 pyvirtualdisplay 无法单击 Web 元素
我有一个简单的网络爬虫,它可以登录 Twitter,进入下一页,然后通过单击齿轮图标从我的所有关注者(如果他们被静音等)那里获取信息。问题是单击功能已停止在我的新计算机上运行。
另外,我正在使用 Firefox() 网络驱动程序。
这是我正在使用的代码(您需要为 Twitter 添加自己的凭据才能使其正常工作):https ://gist.github.com/anonymous/4c64054d01af77ae2c5c2b39a2165d80
这段代码在一台机器上运行良好,但无法在另一台机器上单击 dom 元素。以下是一些可能提供洞察力的规格。
当我在“坏框”上运行此代码并且不捕获异常时,我得到以下信息:
python - pyvirtualdisplay (xvfb) 的两个实例不会同时运行
所以我有一个小脚本,它使用 pyvirtualdisplay 制作一个虚拟显示器来运行一些硒测试。我已经在我的 Windows 计算机上测试了相同的代码,并且两者同时运行得很好。这让我相信问题出在 pyvirtualdisplay 上。看了这里之后,有几个人和我有同样的问题,但没有一个人真正得到解决,所以我真的希望你们中的一个人能在这里帮助我。
从 selenium 导入 webdriver 从 pyvirtualdisplay 导入显示
在 python 中执行此操作。所以是的,任何帮助将不胜感激。
引发错误
python - Pyvirtualdisplay 不喜欢文本
我想从网页中获取一些文本,selenium
但是当我使用pyvirtualdisplay
包并编写如下代码时:
它打印一个空字符串。如果我不使用pyvirtualdisplay
,做同样的事情,它可以正常工作并显示正确的字符串。为什么会发生这种情况,我该如何解决?
python - 无法在 Suse Linux 上安装 Xvfb
我正在尝试使用 Suse 11.4(64 位)上的 python 库运行 selenium-webdriver 为了让它无头运行,它需要另一个 python 包“pyvirtualdisplay”才能运行。我已经能够完美地安装两者。现在的问题是 pyvirtualdisplay 需要一个未安装的名为 Xvfb 的系统级包。Zypper 不可用,我需要使用 tarball 或 rpm 安装它。请指导我如何安装这个库以及在哪里可以找到它。我一直找不到合适的 Xvfb 包,可以安装在这个 Linux 发行版上。
python - 几次运行后无头脚本崩溃
我有一个使用无头浏览器的脚本,我正在使用crontab -e
. 它在前几次运行良好,然后因以下 Traceback 而崩溃:
我的 crontab 行是:
我不想用 python 脚本重载它,所以我已经提取了我认为相关的部分。
非常感谢您的帮助。
编辑
版本:Firefox 49.0.2;硒:3.0.1;geckodriver:geckodriver-v0.11.1-linux64.tar.gz
围绕错误的代码(失败driver.get(url)
):
python - Selenium 3 chrome headless 在 Ubuntu 16.04.3 中不起作用
当我尝试使用 chrome 无头浏览器时出现以下错误。我无法找到正确的错误
错误跟踪:
python - Xvfb 多显示器同时截屏
我有一个要求,我正在运行一个 selenium 脚本,该脚本在一台机器上打开 2 个 Firefox 实例。我想同时截取两个实例的屏幕截图。同一时间部分很重要。
我使用以下步骤来模拟这个:
- 使用启动 2 个不同的显示器
Xvfb -ac :99 and Xvfb -ac :100
- 我有 2 个 python 脚本,它们分别将环境变量 DISPLAY 设置为 99 和 100。
这是python脚本: screenshot99.py
和screenshot100.py
我有两个问题:
- 是否可以同时截取 2 个不同的浏览器实例?
- 如果是,我该如何模拟?我只需要一个概念证明来证明上述事实。