python-3.x 为什么我的Selenium Web浏览器会自动关闭?我该如何修复它?

ru9i0ody  于 2023-05-23  发布在  Python
关注(0)|答案(2)|浏览(480)

Selenium webdriver自动关闭,我做错了什么?
我是一个新的学习Selenium。我一直试图抓住网页,把它看到自动关闭。我不明白这个问题。我尝试了许多方法搜索堆栈溢出也谷歌它和阅读的文档 selenium 。

from selenium import webdriver

chrome_driver_path = "D:\chromedirver.exe"   
dirver = webdirver.Chrome(executable_path=chrome_driver_path)
driver.get("https://www.google.com")

经过一些研究,我改变了我的代码,但面临同样的问题。
代码经过一些研究

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

chrome_driver_path = "D:\chromedriver.exe"    
driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()))    
driver.get("https://google.com")

B =浏览器自动关闭。

332nm8kg

332nm8kg1#

就加这两行

options = webdriver.ChromeOptions()
options.add_experimental_option("detach", True)
driver=webdriver.Chrome(executable_path=chrome_driver_path,options=options)
driver.get("https://www.google.com")
n8ghc7c1

n8ghc7c12#

selenium脚本导致浏览器自动关闭的原因是它已经到达执行结束。程序在执行最后一个函数后存在,即driver.get("https://google.com")完成。
如果你想让浏览器在程序执行后仍然显示在屏幕上,你可以继续使用上面提到的Mohit Kumar,它基本上将你的浏览器从python程序的执行中分离出来。或者,您可以使用显式等待来查找DOM上的某些组件,或者使用time.sleep()函数来延迟程序的执行 (不推荐)
使用time.sleep():

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

driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()))
driver.get("https://google.com")

sleep(30)

使用显式等待:

from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By

driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()))
driver.get("https://google.com")

element = WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "[name=q]")))

相关问题