python-3.x - 在 Python 3 中按顺序打开列出的 URL?
问题描述
我正在尝试按照列出的顺序在 Web 浏览器中打开一组 URL 链接,但是每次运行以下代码时,顺序都不同。我是脚本新手,但了解列表保持顺序,这是我在下面使用的,所以我对它为什么不起作用感到困惑。我怀疑这可能是由于某些页面的加载时间造成的,那么我该怎么做才能确保按列出的顺序打开各个选项卡,并规避任何页面加载时间对顺序的影响?
import webbrowser
urls = ["google.com", "yahoo.com", "bing.com", "duckduckgo.com"]
firefox_path = "C:\\Program Files\\Mozilla Firefox\\firefox.exe"
webbrowser.register('firefox', None, webbrowser.BackgroundBrowser(firefox_path), 1)
for i in urls:
webbrowser.get('firefox').open_new_tab(i)
解决方案
您的代码是正确的,但是 for 循环太快以至于webbrowser
无法意识到 firefox 已经被打开。
只需在你的 for 循环中添加一个延迟,它就会解决问题:
import webbrowser
import time
urls = ["google.com", "yahoo.com", "bing.com", "duckduckgo.com"]
firefox_path = "C:\\Program Files\\Mozilla Firefox\\firefox.exe"
webbrowser.register('firefox', None, webbrowser.BackgroundBrowser(firefox_path), 1)
for i in urls:
webbrowser.get('firefox').open_new_tab(i)
time.sleep(1)
推荐阅读
- c++ - 由于长度不正确,字符串未在循环中打印出来
- javascript - 在新行上拆分字符串,同时在 JavaScript 中保留分隔符
- python - 冒号前后匹配短语
- intellij-idea - WebStorm HTML 文件未显示代码折叠标签
- jmeter - Jmeter 针对不同的循环计数顺序运行线程
- node.js - 如何设置节点服务器(nginx 位于顶部)以使用 mongodb
- javascript - 如何使用包含变量值
- matlab - 如何在 MATLAB 中将图形打印到嵌入希腊字母或公式的 pdf 文件?
- r - RStudio knitr markdown,德语变音符号导致代码块中的文本变为绿色
- javascript - 画布上的虚线