我試圖啟動網路驅動程式->隨機時間睡眠->關閉網路驅動程式但它發生了“無效的會話ID”
有誰知道如何解決這個問題?,請
這是以下代碼
from tkinter import *
from tkinter import messagebox
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.common.keys import Keys
import pyautogui
import chromedriver_autoinstaller
import datetime
import time
import pyperclip
import csv, os
import sys
import random
mobile_emulation = { "deviceName": "iPhone 6/7/8" }
chrome_ver = chromedriver_autoinstaller.get_chrome_version().split('.')[0]
chromedriver_path = f'./{chrome_ver}/chromedriver.exe'
options = webdriver.ChromeOptions()
options.add_argument("start-maximized")
options.add_argument("disable-infobars")
options.add_argument("--disable-extensions")
options.add_experimental_option('excludeSwitches', ['enable-logging'])
options.add_experimental_option("mobileEmulation", mobile_emulation)
driver = webdriver.Chrome(chromedriver_path, chrome_options = options)
url = 'https://google.com/'
driver.get(url)
rndNum = random.randint(350,700)
now = time.localtime()
nowTime = str(now.tm_hour) 'HOUR' str(now.tm_min) 'MIN' str(now.tm_sec) 'SEC'
print('------------------> RANDOM TIME : ',rndNum//60,'MIN ', rndNum%60, 'SEC')
print("DRIVER FINISH START", nowTime)
time.sleep(rndNum)
driver.close()
driver.implicitly_wait(5)
time.sleep(1)
driver.switch_to.window(driver.window_handles[0])
driver.implicitly_wait(5)
isSearch = 1
now = time.localtime()
nowTime = str(now.tm_hour) 'HOUR' str(now.tm_min) 'MIN' str(now.tm_sec) 'SEC'
print("DRIVER FINISH END", nowTime)
這就是錯誤
Traceback (most recent call last):
File "C:/Users/Desktop/testDriver.py", line 47, in <module>
driver.implicitly_wait(5)
File "C:\Users\AppData\Local\Programs\Python\Python39\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 911, in implicitly_wait
self.execute(Command.SET_TIMEOUTS, {
File "C:\Users\AppData\Local\Programs\Python\Python39\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 321, in execute
self.error_handler.check_response(response)
File "C:\Users\AppData\Local\Programs\Python\Python39\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 242, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.InvalidSessionIdException: Message: invalid session id
uj5u.com熱心網友回復:
您收到該錯誤是因為您driver.close()在呼叫之前呼叫了driver.implicitly_wait(5). 您不能關閉最后一個/唯一的瀏覽器視窗,然后使用帶有driver. 要么不要關閉瀏覽器視窗,要么先打開一個新視窗。
要打開一個新的瀏覽器視窗,請使用:
driver.execute_script("window.open('');")
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/417735.html
標籤:
上一篇:在運行我的seleniumpython腳本時,我在控制臺中使用退出代碼0完成處理,但我的結果沒有顯示
下一篇:硒難以找到元素
