ошибка: selenium.common.exceptions.Исключение TimeoutException: Сообщение:

#python #selenium #web-scraping #webautomation

#python #селен #очистка веб-страниц #веб-автоматизация

Вопрос:

в приведенном ниже коде я попытался войти на веб-сайт, используя selenium, но я получаю эту ошибку selenium.common.exceptions.Исключение TimeoutException: Сообщение:

Заранее спасибо

Код:

 from selenium import webdriver
from bs4 import BeautifulSoup
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By

URL = 'website'
options = webdriver.ChromeOptions()
options.add_argument("headless")
options.add_argument('--no-sandbox')   
options.add_argument('--disable-dev-shm-usage')
options.add_experimental_option('excludeSwitches', ['enable-logging'])
driver = webdriver.Chrome(options=options)
driver.get(URL)
wait = WebDriverWait(driver, 10)
#-------------------------------------------------------------------

wait.until(EC.presence_of_element_located((By.ID,"username"))).send_keys("nocsud")
wait.until(EC.presence_of_element_located((By.ID,"value"))).send_keys("noc_sud10")
driver.find_element_by_id("submitDataverify").click()


#-------------------------------------------------------------------
soup = BeautifulSoup(driver.page_source, 'html.parser')
driver.quit()
root = soup.find(id='root')
print(root)
 

Ответ №1:

я бы рекомендовал вам использовать options.add_argument(«интерактивный»), который позволяет вам видеть, что происходит на веб-странице и на чем остановлен код, вероятно, один из элементов, которые вы ищете в DOM, не найден wait.until(EC.presence_of_element_located((By.ID ,»имя пользователя»))).send_keys(«nocsud») подождите.пока (EC.presence_of_element_located((By.ID ,»значение»))).send_keys(«noc_sud10»)

попробуйте проверить, являются ли «значение» или «имя пользователя» идентификаторами или именами

Комментарии:

1. спасибо за ваш ответ, поэтому, когда я изменил аргумент на интерактивный, теперь я вижу проблему, потому что chrome считает веб-сайт небезопасным, и проблема теперь в том, как я могу обойти небезопасную страницу

2. Вы должны нажать кнопку «Перейти» и нажать «Продолжить» на небезопасную страницу, что-то в этом роде, вы тоже можете использовать selenium.