如何在Perl脚本中使用Selenium Remote Driver最大化/最小化Firefox浏览器窗口

3
我使用Selenium::Remote::Driver模块。我正在尝试使用perl语言最大化/最小化浏览器窗口。我可以将窗口大小设置为特定坐标,但无法完全将其最大化和最小化。因此,请帮助我完成这项工作。我的代码如下:

maximize.pl

use strict;
use warnings;
use Selenium::Remote::Driver;
my $driver = new Selenium::Remote::Driver;

$driver->get("https://www.google.co.in/");
$driver->set_implicit_wait_timeout(40000);
$driver->set_window_size($driver->screenwidth, $driver->screenheight,'current');

这里我遇到了一个错误,提示为“通过Selenium::Remote::Driver包无法定位screenwidth对象方法”

您能否请教我如何使用Selenium远程驱动程序来最大化或最小化浏览器窗口?

代码编辑:

$driver->set_window_size(1920, 1680,'current');

抱歉,这是一个打错的字,应该是这样的。1920和1680是我们传递的尺寸,但是窗口没有适配屏幕,也没有完全最大化。


您没有定义 screenwidth ...那它应该从哪里来? - Arran
@Arran,请在编辑后检查代码。 - santoshi
1个回答

0

很遗憾,Selenium::Remote::Driver 没有提供最大化方法,但是其他 Perl 的 Selenium 模块可以。

如果你切换到 WWW::Selenium,你就可以使用 window_maximize 方法:

use WWW::Selenium;
my $sel = WWW::Selenium->new( ... );
$sel->start;
$sel->open("https://www.google.co.in/");
$sel->window_maximize()

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接