gpt4 book ai didi

python - 使用 Python Web 浏览器访问内部 chrome 页面

转载 作者:行者123 更新时间:2023-12-01 07:44:39 26 4
gpt4 key购买 nike

我有一个程序,我正在使用Python的webbrowser模块打开浏览器并自动导航到页面。我的代码基本上如下所示:

import webbrowser

chrome_path = "C:/Program Files (x86)/Google/Chrome/Application/chrome.exe %s"
url = "stackoverflow.com"

webbrowser.get(chrome_path).open(url)

当在普通站点上执行此操作时,它的工作原理与预期完全一致。但是,当我替换为 chrome://<page> 格式的内部 Chrome 站点时(例如 chrome://dinochrome://version )对于 URL,Chrome 按预期打开,但它不会导航到任何地方,而是停留在我的新标签页上。

为什么普通 URL(甚至“hello world”等字符串)可以按预期工作,但只有 chrome 特定的页面不能按预期工作?有什么办法可以解决这个问题吗?

(顺便说一下,这是在 Windows 10 和 Python 3.6.8 上)。

最佳答案

确实不行,但不是webbrowser都是错的。

对代码的深入研究表明,最终,webbrowser只需调用 subprocess.Popen(args)哪里args最终成为

'C:/Program Files (x86)/Google/Chrome/Application/chrome.exe <url>' .

如果您只是打开终端窗口并执行

"C:/Program Files (x86)/Google/Chrome/Application/chrome.exe" chrome://dino

您将得到完全相同的行为:Chrome 打开并停留在主页上,因此问题出在 Chrome 代码的某个位置(错误或设计选择)。

它适用于 selenium因为我假设它使用了一些黑色操作系统魔法(即进程间通信),所以它不依赖于 Chrome 的代码。它只是模仿用户。

关于python - 使用 Python Web 浏览器访问内部 chrome 页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56519446/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com