Надеюсь, вы можете помочь. Я относительно новичок в Python и Selenium. Я пытаюсь собрать простой скрипт, который автоматизирует поиск новостей на разных сайтах. Основное внимание было уделено футболу и 1025 *, чтобы я мог получить последние новости «Манчестер Юнайтед» из нескольких мест и сохранить для меня список названий ссылок и URL. Затем я мог бы сам просмотреть ссылки и выбрать все, что хотел просмотреть.
При попытке найти независимую газету (https://www.independent.co.uk/) я, похоже, столкнулся с проблемой элемента не взаимодействует при использовании следующих подходов:
import time
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.common.exceptions import NoSuchElementException
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
driver = webdriver.Chrome('chromedriver')
driver.get('https://www.independent.co.uk')
time.sleep(3)
#accept the cookies/privacy bit
OK = driver.find_element_by_id('qcCmpButtons')
OK.click()
#wait a few seconds, just in case
time.sleep(5)
search_toggle = driver.find_element_by_class_name('icon-search.dropdown-toggle')
search_toggle.click()
Это выдает selenium.common.exceptions.ElementNotInteractableException: Сообщение: элемент не взаимодействует ошибка
Я также пробовал с XPATH
search_toggle = driver.find_element_by_xpath('//*[@id="quick-search-toggle"]')
и я тоже пробовал ID.
Я много читал здесь, а затем также пытался использовать методы WebDriverWait и execute_script:
element = WebDriverWait(driver, 20).until(EC.presence_of_element_located((By.XPATH, '//*[@id="quick-search-toggle"]')))
driver.execute_script("arguments[0].click();", element)
Это не похоже на ошибку, но окно поиска не появилось, т.е. щелчка не произошло.
Любая помощь, которую вы могли бы оказать, была бы фантастична c. Спасибо, Пит