如何使用 Python 启动带有多个选项卡的新 Firefox 窗口

发布于 2024-08-28 17:27:53 字数 427 浏览 2 评论 0原文

我想创建一个 MSWindows Python 程序,每次运行时都会启动一个带有多个选项卡的新 Firefox 窗口。例如,如果我想搜索“hello”,则会弹出一个新窗口(即使 Firefox 窗口已打开),然后启动 Google 和 Bing 选项卡搜索“hello”。如果我将关键字更改为“world”,则会再次弹出一个新的浏览器,并在 Google 和 Bing 选项卡中搜索“world”。

我查看了 webbrowser 模块但无法将其实现: 1. 当浏览器已打开时启动新浏览器:例如 webbrowser.open('http://www.google.com ',new=1) 将打开一个新选项卡 2. 在同一窗口中同时启动多个选项卡

感谢帮助。

谢谢。

I want to create a MSWindows Python program that would launch a new Firefox window with multiple tabs each time it is run. For example if I want to search "hello", a new window pops out (even if a Firefox window is already open) and then launches a Google and Bing tabs searching for "hello". If I change the keyword to "world", a new browser pops out again with Google and Bing tabs searching for "world".

I've looked at the webbrowser module but couldn't get it to:
1. Launch a new browser when a browser is already open: e.g. webbrowser.open('http://www.google.com',new=1) will instead open a new tab
2. Launch multiple tabs simultaneously in the same window

Appreciate the help.

Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

输什么也不输骨气 2024-09-04 17:27:53

在 python 3.6 中,完整的答案将包括来自 网络浏览器文档

import webbrowser

def main():
    # print(webbrowser._browsers) # for Python 3.x to determine .get() arg
    browser = webbrowser.get('firefox')

    urls = ['url1', 'url2', 'url3']

    first = True
    for url in urls:
        if first:
            browser.open_new(url)
            first = False
        else:
            browser.open_new_tab(url)

if __name__ == '__main__':
    main()

享受代码。如果对你有帮助的话+1。干杯!

In python 3.6, a complete answer will include both webbrowser.open_new() and webbrowser.open_new_tab() from the webbrowser docs.

import webbrowser

def main():
    # print(webbrowser._browsers) # for Python 3.x to determine .get() arg
    browser = webbrowser.get('firefox')

    urls = ['url1', 'url2', 'url3']

    first = True
    for url in urls:
        if first:
            browser.open_new(url)
            first = False
        else:
            browser.open_new_tab(url)

if __name__ == '__main__':
    main()

Enjoy the code. +1 if it helped you out. Cheers!

任性一次 2024-09-04 17:27:53

webbrowser 只是不给你这种程度的控制。请使用 subprocess 来显式启动带有新窗口的 F​​irefox,然后向其中添加选项卡。 firefox 命令行参数参考位于此处,但是,简单地说,您想要什么是一个 firefox.exe -new-window (当然使用您想要的 URL 来代替 ),然后是一个或多个 firefox.exe -new-tab (同上)。您可能还想控制宽度和高度、使用与默认配置文件不同的配置文件等——命令行参数可以让您完成所有这些操作。

webbrowser just doesn't give you this degree of control. Use subprocess instead, to explicitly launch firefox with a new window and then add tabs to it. The firefox command line arguments reference is here, but, briefly, what you want is one firefox.exe -new-window <url> (using the URL you want in lieu of <url> of course), then one or more firefox.exe -new-tab <url> (ditto). You may also want to control width and height, use a different profile from the default one, etc -- the command-line arguments let you do all that.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文