- В 15 годах писал похожий парсер, используя node, fetch и axios, но сейчас часть сайтов возвращает html без таблиц с ценами, почему?
- Для чего нужны selenium, playwright и puppeteer, если я могу через fetch и axios все получить?
- Если все же использовать selenium, playwright и puppeteer, что из них лучше на данный момент?
Можно ли их с nodejs использовать?
- Часто вижу о упоминание CDP в контексте парсинга, это зачем и для чего нужно?
- Что использовать для отправки сообщений в телегу?
import undetected_chromedriver as uc
with uc.Chrome() as driver:
pass
print("Успех или ошибка? Сессия все равно успешно закрыта!")Использую официальный ChromeDriver (версия соответствует браузеру).
Скрипт имитирует человеческое поведение:
Добавлены задержки между действиями.
VPN и прокси не используются.
Какие технические требования Ozon к автоматизированным запросам?
Возможно ли получить API-доступ для таких задач?
Как легально реализовать сбор данных для личного использования?
Я попробовал много способов, но все они не помогают мне обойти защиту
Язык не важен
важен алгоритм. Как мне это сделать
Язык не важен, важен алгоритм. Как мне это сделать? Не предлагайте сторонние API для решения капчи.
Вручную можно сделать через настройку "Разрешить сайтам показывать небезопасный контент" с указанием ссылки на web ui, но не понимаю как это можно реализовать в коде.
появляется ошибка selenium.common.exceptions.StaleElementReferenceException: Message: stale element reference: stale element not found. Как от нее избавиться?
# EC.presence_of_element_located((By.CSS_SELECTOR, "product-slider__img js-product-current-img"))
EC.presence_of_element_located((By.CSS_SELECTOR, ".product-slider__img.js-product-current-img"))from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.common.exceptions import TimeoutException
options = Options()
service = Service(r'D:\project\chromedriver-130.0.6723.93.exe')
driver = webdriver.Chrome(service=service, options=options)
url = 'https://superstep.ru/product/NCFSW0W288YW_GRA/#colorGRA'
driver.get(url)
try:
element = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.CSS_SELECTOR, ".product-slider__img.js-product-current-img"))
)
page_html = driver.page_source
print(page_html)
except TimeoutException:
print("Элемент не найден")
finally:
print('Программа завершена')
driver.quit()from selenium import webdriver
from selenium.webdriver.firefox.service import Service
from selenium.webdriver.firefox.options import Options
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.common.exceptions import TimeoutException
options = Options()
service = Service(r'D:\project\geckodriver.exe')
driver = webdriver.Firefox(service=service, options=options)
url = 'https://superstep.ru/product/NCFSW0W288YW_GRA/#colorGRA'
driver.get(url)
try:
element = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.CSS_SELECTOR, ".product-slider__img.js-product-current-img"))
)
page_html = driver.page_source
print(page_html)
except TimeoutException:
print("Элемент не найден")
finally:
print('Программа завершена')
driver.quit()
Возможно ли с помощью selenium создать такой скрипт, что:
$ curl https://codeforces.com/<!DOCTYPE html><html lang="en-US"><head><title>Just a moment...</title><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=Edge">данный код не работает
# driver.find_element("xpath", "//input[@id='LinkDa']" ).click
driver.find_element("xpath", "//input[@id='LinkDa']" ).click()import time
from selenium import webdriver
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()
driver.get('https://autoins.ru/osago/raschet-stoimosti-osago/proverit-kbm/')
# Debug
time.sleep(10)
checkbox = driver.find_element(By.XPATH, '//label[@for="linkDa"]')
checkbox.click()
# Debug
time.sleep(10)
button = WebDriverWait(driver, 10).until(
EC.element_to_be_clickable((By.ID, "btnDa"))
)
button.click()
# Debug
time.sleep(10)
driver.quit() # h2= g.find_element(By.XPATH, '//h2').text
h2 = g.find_element(By.XPATH, './/h2').text Как в selenium открыть селектор на JS?
Но далее чтобы получить номер уже зареганым, просит подтвердить капчей.
Есть ли возможность сделать движения похожими на человеческие
или еще лучше, как-то сделать имитацию регистрации и получить номер