使用Powershell在私有模式下使用Firefox打开多个URL

时间:2019-07-14 13:03:15

标签: powershell url firefox

我正在尝试使用脚本使firefox打开具有多个URL的1个私有窗口,但是问题是如果我打开了firefox并运行该脚本,它将在私有窗口中打开1个URL,然后打开另一个私有窗口并打开其余的URL

如果我关闭了Firefox并运行该脚本,它将按预期运行,并且只有1个私有窗口打开,打开所有标签中的所有URL

我用google chrome尝试了相同的脚本,无论是否打开了chrome,它都能按预期工作,所以我假设它与我不了解的Firefox设置有关

$urls = @("https://google.com/","https://www.youtube.com/","https://www.facebook.com")

foreach($url in $urls){

    start "C:\Program Files\Firefox Developer Edition\firefox.exe" -ArgumentList @( '-private-window' , $url)
}

我还尝试了以下形式的代码:

start "C:\Program Files\Firefox Developer Edition\firefox.exe" -ArgumentList @( '-private-window' , 'https://google.com/')

start "C:\Program Files\Firefox Developer Edition\firefox.exe" -ArgumentList @( '-private-window' , 'https://facebook.com/')

start "C:\Program Files\Firefox Developer Edition\firefox.exe" -ArgumentList @( '-private-window' , 'https://youtube.com/')

两个代码都做同样的事情,我得到的结果也一样。

我想要打开1个私有窗口,而不管我打开了多少firefox选项卡或窗口,并仅在这1个私有窗口中打开了脚本中的URL。

注意:上面的代码在chrome中可以按预期工作,因此问题可能是在Firefox中,需要不确定哪些内容需要更改。

1 个答案:

答案 0 :(得分:0)

所以我终于能够在某种程度上重现您的问题。如果我按原样运行ur脚本,则会在一个私人窗口中打开3个标签。如果我再次运行它,它将在现有窗口中添加新标签。

然后我在打开一个正常窗口的情况下运行了脚本,我想我在这里看到了您的问题。已打开2个私有窗口,一个带有2个选项卡,一个带有1个。一个带有2个选项卡的窗口中有一个为空白。因此其中一个网址未按预期打开。

在重复中,我发现它并非总是与“ foxblocked”哈哈相同的URL。因此,我在foreach循环中添加了一个延迟,该延迟似乎已经消除了我所看到的问题。也许firefox.exe不能像我们服务它一样快地处理请求。

$urls = @("https://google.com/","https://www.youtube.com/","https://www.facebook.com")

foreach($url in $urls){

    start "C:\Program Files\Mozilla Firefox\firefox.exe" -ArgumentList @( '-private-window' , $url)
    Start-Sleep -Seconds 1
}