diff --git a/scraping/scrapingMain.py b/scraping/scrapingMain.py new file mode 100644 index 0000000..8e96265 --- /dev/null +++ b/scraping/scrapingMain.py @@ -0,0 +1,43 @@ +from selenium import webdriver +from selenium.webdriver.chrome.service import Service +from selenium.webdriver.common.by import By +from selenium.webdriver.support.ui import WebDriverWait +from selenium.webdriver.support import expected_conditions as EC +from webdriver_manager.chrome import ChromeDriverManager + +# Инициализация драйвера +driver = webdriver.Chrome(service=Service(ChromeDriverManager().install())) + +# URL страницы товара +url = 'https://www.citilink.ru/catalog/noutbuki/?ref=mainpage' + +# Переход на страницу +driver.get(url) + +try: + # Ожидание появления хотя бы одного элемента
  • с указанным классом + WebDriverWait(driver, 10).until( + EC.presence_of_element_located((By.CSS_SELECTOR, 'li.app-catalog-12y5psc.e4qu3682')) + ) + + # Поиск всех элементов
  • с указанным классом + all_elements = driver.find_elements(By.CSS_SELECTOR, 'li.app-catalog-12y5psc.e4qu3682') + + # Список для хранения информации об оперативной памяти + ram_info_list = [] + + # Фильтрация элементов по тексту + for element in all_elements: + span_element = element.find_element(By.TAG_NAME, 'span') # Ищем внутри
  • + if "Оперативная память" in span_element.text: + ram_info_list.append(element.text) # Добавляем текст элемента в список + + # Вывод информации об оперативной памяти + for ram_info in ram_info_list: + print(f'Информация об оперативной памяти: {ram_info}') + +except Exception as e: + print(f'Ошибка: {e}') +finally: + # Закрытие драйвера + driver.quit()