我有一个小Python脚本,可以在启动时启动我需要的所有选项卡,最后应该有一个新的选项卡页:
import requests
import subprocess
import time
chrome_path = r'C:\Program Files\Google\Chrome\Application\chrome.exe'
if is_this:
subprocess.Popen([chrome_path, 'example.com'])
time.sleep(5)
subprocess.Popen([chrome_path, 'https://exmaple.com'])
time.sleep(0.2)
subprocess.Popen([chrome_path, 'http://guthib.com'])
time.sleep(0.2)
subprocess.Popen([chrome_path, 'chrome://newtab'])
else:
subprocess.Popen([chrome_path, 'https://github.com'])
time.sleep(0.2)
subprocess.Popen([chrome_path, 'http://testurl.com'])
time.sleep(0.2)
subprocess.Popen([chrome_path, 'chrome://newtab'])
一切正常,除了 chrome://newtab 打开一个新的 chrome 窗口而不是同一窗口中的新标签页。
我在整个网络上进行了搜索,但找不到解决方案,除了将 selenium 与 webdriver 一起使用,但是使用它们我遇到了很多问题:
它没有通过我的 chrome 配置文件启动 它显示一个横幅,表明该浏览器正在自动运行 Windows Defender 会对其进行标记。 newtab als 在那里不起作用。
感谢您的帮助。
您会考虑使用 Selenium 的 Browserist 扩展吗?
完全公开,我是这个包的作者。 Browserist 是 Selenium Web 驱动程序的轻量级、简洁的扩展,使浏览器自动化变得更加容易。只需使用
pip install browserist
安装软件包即可开始使用。
也许这样的东西可以解决你的问题?
from browserist import Browser
with Browser() as browser:
browser.open.url("https://example.com")
browser.window.open.new_tab("https://google.com", "tab_2")
browser.window.open.new_tab("https://github.com", "tab_3")
browser.window.open.new_tab("http://testurl.com", "tab_4")
print("About to quit the browser. Press Y to continue.")
while browser.prompt.proceed_yes_or_no() is False:
print("About to quit the browser. Press Y to continue.")
pass
它的样子:
备注:
Y
退出。