selenium.common.exceptions.TimeoutException: Сообщение: время ожидания сценария: результат не был получен в течение 30 секунд - PullRequest
1 голос
/ 08 июня 2019

Я поставил скрипт на странице, но я получил эту ошибку?

selenium.common.exceptions.TimeoutException: Сообщение: время ожидания сценария: результат не был получен в течение 30 секунд

driver.set_script_timeout() не помогает

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
import time

options = Options()

options.add_argument("start-maximized")
driver = webdriver.Chrome(chrome_options=options)
driver.get("https://www.apple.com/")
driver.set_script_timeout()
driver.execute_async_script("""const script = document.createElement('script'); script.id = '__table_iac'; script.dataset.shortCode = '97sqKm'; script.src = 'https://concierge.table.co/static/widget/inappchat.js';; document.body.appendChild(script);""")
time.sleep(5)

1 Ответ

0 голосов
/ 10 июня 2019

Ваш асинхронный скрипт ничего не возвращает.

Selenium ожидает, что после завершения асинхронного скрипта будет запущен обратный вызов.Если через 30 секунд ничего не возвращается, тайм-аут сценария срабатывает и выдает ошибку.

Вместо того, чтобы пытаться запускать как асинхронный скрипт, просто попробуйте запустить его как стандартный встроенный скрипт.

driver.execute_script("""const script = document.createElement('script'); script.id = '__table_iac'; script.dataset.shortCode = '97sqKm'; script.src = 'https://concierge.table.co/static/widget/inappchat.js';; document.body.appendChild(script);""")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...