selenium.common.exceptions.WebDriverException:消息:未知错误:未定义url
码:
driver = webdriver.Chrome()
driver.get('https://google.com')
url='https://www.yahoo.com'
current = driver.current_window_handle
driver.execute_script("window.open(url);") #New tab
new_window = [window for window in driver.window_handles if window != current][0] # Get new tab ID
driver.switch_to.window(new_window) # Switch to new tab
运行上面的代码时,它给了我错误:
selenium.common.exceptions.WebDriverException:消息:未知错误:未定义url
该错误是因为未定义javascript变量url
。
driver.execute_script
使用浏览器的JS引擎执行JS代码。在调用execute_script
之前,它不知道定义了什么Python变量。
你应该将它用作变量而不是硬编码url
:
driver.execute_script("window.open('{}');".format(url))
您需要将Python变量传递给JavaScript。试试以下:
driver.execute_script("window.open('%s');" % url)