Selenium:如何在不切换到选项卡的情况下获取选项卡的当前 url?

Selenium: How to get current url of a tab without switching to it?

我经常在使用网络浏览器时打开数百个选项卡,这会降低我的计算机速度。所以我想在 Python 和 Selenium 中编写一个浏览器管理器,它打开选项卡并可以保存这些选项卡的 urls,然后我可以稍后重新打开它们。

但似乎在 Python Selenium 中获取选项卡 url 的唯一方法是调用 get_current_url.

我想知道是否有办法在不切换到选项卡的情况下获取 url?

只需转到正在切换到其他选项卡的文本 link 并将其@href 属性 link 保存到字符串或列表中

我不确定您的实际情况,但我们可以获取当前页面中存在的所有超链接的列表。这个想法是收集所有带有标签 "a" 的网络元素,然后获取它们的 "href" 属性值。下面是 Java 中的示例代码。请相应修改。

//Collecting all hyperlink elements
List<WebElement> allLinks = driver.findElements(By.tagName("a"));

//For each Hyperlink element getting its target href value 
for(WebElement link: allLinks)
{
    System.out.println(link.getAttribute("href"));
}

希望对您有所帮助。 谢谢

我的建议是为此使用扩展名或 write/extend 你自己的扩展名。
似乎有一些这样的类型
https://addons.mozilla.org/en-US/firefox/addon/export-tabs-urls-and-titles/
https://chrome.google.com/webstore/detail/save-all-tab-urls/bgjfbcjoaghcfdhnnnnaofkjbnelkkcm?hl=en-GB

据我所知,如果不先切换到某个网页,就无法 getting/accessing 一个 url。

没有其他方法可以让特定的 of the browser without switching to the specific as needs focus on the DOM Tree 执行任何操作。