price-builder-backend/scraping/scrapingMain.py
2024-10-27 20:49:39 +04:00

44 lines
1.8 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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:
# Ожидание появления хотя бы одного элемента <li> с указанным классом
WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.CSS_SELECTOR, 'li.app-catalog-12y5psc.e4qu3682'))
)
# Поиск всех элементов <li> с указанным классом
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') # Ищем <span> внутри <li>
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()