问题标签 [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.

0 投票
1 回答
552 浏览

python - 在带有 Firefox 配置文件的网络服务器上使用 selenium

我正在尝试编写一个脚本,它将我的数据从一个站点同步到另一个站点。第一个站点没有公共 api。但我知道这些查询,它可以为我提供我需要的所有数据的 json 响应。我决定使用selenium。主要问题是我必须获得授权才能获取这些数据,但是使用 selenium 授权太难了,因为站点使用 recaptcha2。我也想在我的服务器上使用它。所以我也使用pyvirtualdisplay

我在我的 Firefox 中创建了一个新的配置文件,然后我在第一个具有该配置文件的站点上获得了授权,并在脚本中使用了它。像这样的东西

它在我的电脑上完美运行。在服务器上,如果我不使用配置文件, pyvirtualdisplay也可以工作。但是,如果我在服务器上使用配置文件,则会收到错误消息:

geckodriver.log 只有一个字符串:

有任何想法吗?

0 投票
0 回答
114 浏览

python - 无法在 Pythonanywhere 上使用 pyvirtualdisplay + selenium + firefox 下载 csv

我正在尝试在 Pythonanywhere 上托管我的 selenium 脚本。
但是,我看不到通过我的代码下载的任何 .csv。
我已经搜索了一段时间。好头疼!任何帮助将不胜感激!

单击下载按钮后,我有一个屏幕截图,它显示了预下载加载程序,似乎即将下载文件。但是,之后什么都没有下载。

0 投票
2 回答
1529 浏览

python - 我有 PyVirtualDisplay==0.2.5 包的问题,​​用于使用虚拟显示器(无头模式)运行测试

我的测试正在按预期工作和运行PyVirtualDisplay==0.2.1,但我对这个包的最新版本有问题(例如,PyVirtualDisplay==0.2.5)。

我的代码片段:

错误信息:

错误回溯(最后一次调用):文件“/usr/local/Cellar/python/3.7.6/Frameworks/Python.framework/Versions/3.7/lib/python3.7/unittest/case.py”,第 59 行,在 testPartExecutor 产生文件“/usr/local/Cellar/python/3.7.6/Frameworks/Python.framework/Versions/3.7/lib/python3.7/unittest/case.py”,第 624 行,运行 self.setUp( ) 文件“/Users/ratmirasanov/Documents/testing/welcome_widget/test_welcome_widget.py”,第 24 行,在 setUp self._set_up() 文件“/Users/ratmirasanov/Documents/testing/utilities.py”,第 41 行,在 _set_up self.display.start() 文件“/Users/ratmirasanov/Documents/testing/venv/lib/python3.7/site-packages/pyvirtualdisplay/abstractdisplay.py”,第 171 行,开始引发 XStartTimeoutError(msg % d) pyvirtualdisplay .抽象显示。XStartTimeoutError:无法在显示“:1001”上启动 X(xdpyinfo 检查失败)。

我没有找到任何有效的解决方案来解决这个问题。任何帮助将不胜感激。谢谢。

UPD:该PyVirtualDisplay==0.2.5软件包在 Ubuntu 18.04.3 LTS 上按预期工作。

程序位于何处xdpyindo/usr/bin/xdpyinfo.

问题出在我的安装了 XQuartz ( https://www.xquartz.org/index.html ) 的 Mac (macOS Catalina 10.15.2) 上(xdpyindo程序位于/opt/X11/bin/xdpyinfo文件夹中)。

0 投票
1 回答
235 浏览

python - How to automate the activation of Flash plug-in using selenium firefox geckodriver?

When I try to open a page with flash using an automated python script with Selenium I reach the page in the picture below. And I cannot pass.

Flash Activation Page

It's a remote server running Ubuntu 16.04, without access to a monitor or a keyboard/mouse.

Python version: 3.5.2

Selenium version: 3.14.1

Geckodriver 0.26.0

Follows my code:

Here's the output:

0 投票
0 回答
96 浏览

selenium - 带有 pyvirtualdisplay 和 Xvfb 的 Selenium 脚本无法在 linux vm 上的 cron 上运行

我有一个 selenium 脚本,它使用 pyvirtualdisplay.Display 和 visible=0。该脚本在手动运行时运行良好,但在使用 cron 作业运行时失败。我认为这是由于 Xvfb 和 pyvirtualdisplay 但我似乎无法修复它。crontab 命令是 * * * * * /python3 /location/to/the/script

0 投票
0 回答
272 浏览

python-3.x - pyVirtualDisplay 大小未按预期工作

我正在尝试在 Ubuntu 上运行的远程 EC2 服务器上以无头模式运行 chrome。我最近做了包升级

  • 谷歌浏览器 83.0.4103.97
  • ChromeDriver 83.0.4103.39 (ccbf011cb2d2b19b506d844400483861342c20cd-refs/branch-heads/4103@{#416})
  • PyVirtualDisplay==1.3.2
  • 硒==3.141.0

以前我使用的是旧版本的 google-chrome、chromedriver 和 pyvirtualdisplay。我可以设置显示大小Display(visible=0, size=(1400, 1800)),并且可以查看整个网页,但升级后,我不再通过对象的size参数调整屏幕Display。我最终不得不做以下事情:

所以我的问题是,用 初始化我的 Display 对象有什么意义Display(visible=0, size=(1400, 1800))

0 投票
1 回答
682 浏览

python - pyvirtualdisplay 中的 XStartError

我在我的本地机器上运行一个同事笔记本(她使用了 collab)。

导入后,这行代码

导致此错误(缩写,它的页面长):

我使用 conda 安装pyvirtualdisplay包并Xvfb从 Xquarts 安装。

这两种工具对我来说都是全新的,所以我几乎不知道它们是做什么的。我试图让这个笔记本运行,这样我就可以学到更多东西,但我什至在开始之前就被卡住了。

0 投票
0 回答
117 浏览

docker - stdout FileNotFoundError 上的 pyvirtualdisplay 错误:[Errno 2] 没有这样的文件或目录

我在 Azure 上运行 Docker 容器并使用 pyvirtualdisplay 打开一个显示进行渲染。做完之后

我收到以下错误。有小费吗?

另外,我已经在我的 Dockerfile 中安装了 xvfb

0 投票
0 回答
438 浏览

python - 在 Python 中导入显示时出现 PyVirtualDisplay 语法错误

我正在尝试在我的树莓派上运行 PyVirtualDisplay 来打开一个网页。但是,当我运行它时,会引发错误。

错误如下:

我正在运行的代码如下:

我在我的树莓派 3 B+ 上运行它,它的最新固件。我已经使用 pip 安装了 pyvirtualdisplay,并且还安装了 xvfb。

我不确定为什么会发生错误,但这似乎是由于“display.py”文件中的错误。

“display.py”文件的相关部分如下(有错误的行在第3行):

我不知道该怎么做,任何帮助将不胜感激。谢谢你!

0 投票
1 回答
95 浏览

python - 如何使用 python、selenium、pyvirtualdisplay 点击打开一个新窗口?

我在 python 中编写了一个使用 selenium、chrome 和附加扩展的刮板。刮板在本地工作,显示可见,但当我尝试在headless模式下运行它时不工作。

在抓取的网站上,有一个按钮会自动打开一个新窗口(我无法通过 URL 访问它以便在新选项卡中打开它)。

Chrome 在安装了扩展程序后无法在无头模式下工作,因此我不得不使用 pyvirtualdisplay。
问题是Displaypyvirtualdisplay打开一个浏览器窗口,因此确认窗口永远不会出现。如何允许 pyvirtualdisplay 打开新窗口并在它们之间切换?