【问题标题】:Close Tab Based on Title根据标题关闭标签
【发布时间】:2016-07-26 07:31:32
【问题描述】:
如何使用WWW::Mechanize::Firefox 关闭基于标题的标签?
这是我目前拥有的:
my $ff = Firefox::Application->new();
my @tab_info = $ff->openTabs();
foreach my $tab (@tab_info) {
if($tab->{title} eq "TITLE HERE") {
$ff->closeTab($tab->{location});
}
}
closeTab() 的文档只是说“关闭给定选项卡”,没有关于给定选项卡是什么的信息
【问题讨论】:
标签:
perl
firefox
mechanize
www-mechanize
www-mechanize-firefox
【解决方案1】:
它是$ff->closeTab($tab->{tab})。例如,请参阅Cookbook。一个完整的程序:
use WWW::Mechanize::Firefox;
my $ff = Firefox::Application->new();
my $title_to_close = "Title of the page to close ...";
# This will pull in all currently opened tabs
my @tabs = $ff->openTabs();
foreach my $tab (@tabs) {
if ($tab->{title} =~ /$title_to_close/) {
print "Close tab: $tab->{title}";
$ff->closeTab($tab->{tab});
}
}
【解决方案2】:
更简洁:
$ff->closeTab($_->{tab}) for grep { $_->{title} eq 'TITLE HERE' } $ff->openTabs;