Всем привет, пишу парсер для ozon seller на selenium, сайт каким-то образом определяет работу selenium. Нужно входить в личный кабинет ozon seller по номеру телефона, но когда есть какой-то код selenium, форма не отправляется "Произошла ошибка. Попробуйте ещё раз"
1. Добавил
await Options.excludeSwitches("enable-logging");
await Options.addArguments("Mozilla/5.0 (platform; rv:geckoversion) Gecko/geckotrail Firefox/firefoxversion")
await Options.addArguments("--disable-blink-features");
await Options.addArguments("--disable-blink-features=AutomationControlled");
2. Сделал размер экрана максимальным
await driver.manage().window().maximize();
3. Добавил
await driver.executeScript("Object.defineProperty(navigator, 'webdriver', {get: () => undefined})")
И такой
const cdpConnection = await driver.createCDPConnection('page');
await cdpConnection.execute(
'Page.addScriptToEvaluateOnNewDocument', {
source: `
const newProto = navigator.__proto__;
delete newProto.webdriver;
navigator.__proto__ = newProto;
`
}
);
4. Поменял название переменной $cdc_ в chromedriver.exe
https://stackoverflow.com/questions/33225947/can-a...
5. Добавил задержку на каждое действие
6. Пробовал использовать различные user-agent
7. Использовал proxy, но ozon seller тогда вообще не давал доступ
Мне нужно входить в личный кабинет ozon seller, собирать отзывы о товарах и автоматически на них отвечать. У ozon seller есть api, но у него нет функционала работы с отзывами
const {Builder, Browser, By, Key, until, Capabilities } = require('selenium-webdriver');
const Chrome = require('selenium-webdriver/chrome');
(async function example() {
const Options = await new Chrome.Options();
await Options.excludeSwitches("enable-logging");
await Options.addArguments("Chrome/113.0.0.0 ")
await Options.addArguments("--disable-blink-features");
await Options.addArguments("--disable-blink-features=AutomationControlled");
let driver = await new Builder().forBrowser('chrome').setChromeOptions(Options).build();
await driver.manage().window().maximize();
await driver.executeScript("Object.defineProperty(navigator, 'webdriver', {get: () => undefined})")
const cdpConnection = await driver.createCDPConnection('page');
await cdpConnection.execute(
'Page.addScriptToEvaluateOnNewDocument', {
source: `
const newProto = navigator.__proto__;
delete newProto.webdriver;
navigator.__proto__ = newProto;
`
}
);
try {
await driver.get("https://seller.ozon.ru/app/registration/signin?auth=1");
await driver.sleep(200)
await driver.wait(until.elementLocated(By.css('input[type="tel"]')), 2000).sendKeys('9183464580');
await driver.sleep(200)
await driver.findElement(By.css('button[type="submit"]')).click();
}
catch(err) {
console.log(err)
}
})();