代码执行后Chromedriver窗口自动关闭

1 投票
1 回答
68 浏览
提问于 2025-04-12 17:57

我正在尝试在Python中使用Selenium运行Chromedriver。
但是在执行我的代码后,Chromedriver窗口会立刻停止,并出现错误信息。

这是我的代码:

from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager
import time

path = "X:/test/chromedriver.exe"

s = Service(path)
driver = webdriver.Chrome(service=s)
# driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()))
url = "https://www.nike.com/in/w/mens-shoes-nik1zy7ok"
driver.get(url)
time.sleep(4)
height = driver.execute_script("return document.body.scrollHeight")
while True:
    driver.execute_script("window.scrollTo(0,document.body.scrollHeight)")
    time.sleep(3)
    new_height = driver.execute_script("return document.body.scrollHeight")
    if height == new_height:
        break
    height = new_height

这是我在控制台看到的日志:

DevTools listening on ws://127.0.0.1:58103/devtools/browser/6b68ccf6-fc7e-4a29-8ff7-bd0ec67924ca
[14872:16644:0326/155508.942:ERROR:ssl_client_socket_impl.cc(970)] handshake failed; returned -1, SSL error code 1, net_error -101
[14872:16644:0326/155509.194:ERROR:ssl_client_socket_impl.cc(970)] handshake failed; returned -1, SSL error code 1, net_error -101

我希望Chromedriver窗口能保持打开,直到我手动关闭它。同时也想解决终端中显示的错误。

1 个回答

1

在脚本的某个位置添加一个断点,这样可以让程序暂停运行,这样浏览器就不会关闭:

import pdb
pdb.set_trace()

或者可以用更简单的方式来做:

breakpoint()

要从断点继续运行,您可以在控制台输入 c 然后按回车。

撰写回答