Я новичок в программировании. Я хочу создать скрипт, который будет работать на сайте www.kosarbolt.hu. Скрипт должен:
Искать товар по его SKU (артикул может различаться).
Открыть страницу товара.
Установить желаемое количество.
Добавьте товар в корзину.
Я пробовал реализовать это как на JavaScript, так и на Python, но постоянно сталкивался с проблемами, и проект терпел неудачу.
В будущем Я хочу улучшить этот сценарий для обработки нескольких SKU, представленных в XML-файле. файл и добавьте все эти продукты в корзину.
Может ли кто-нибудь подсказать мне, как этого добиться, или поделиться примером, чтобы начать? Будем очень признательны за любую помощь!
const { chromium } = require('playwright');
(async () => {
const browser = await chromium.launch({ headless: false });
const page = await browser.newPage();
try {
// 1. Oldal megnyitása
console.log("1. Oldal megnyitása...");
await page.setViewportSize({ width: 1280, height: 720 });
await page.goto('https://www.kosarbolt.hu');
// 2. Oldal nagyításának csökkentése
console.log("2. Oldal nagyításának csökkentése...");
await page.evaluate(() => {
document.body.style.zoom = "0.5";
});
// 3. Cikkszám beírása és keresés
console.log("3. Cikkszám beírása és keresés...");
await page.fill('#filter_keyword', '6614');
await page.press('#filter_keyword', 'Enter');
console.log("Keresés elküldve.");
await page.waitForTimeout(2000); // Várakozás a keresési eredmények megjelenésére
await page.screenshot({ path: 'step3_search_sent.png' });
// 4. Cookie sáv elfogadása (ha van)
console.log("4. Cookie sáv kezelése...");
const cookieButton = await page.locator('.cookie-accept-button');
if (await cookieButton.isVisible()) {
await cookieButton.click();
console.log("Cookie elfogadva.");
}
// 5. Várakozás a termékoldal betöltésére
console.log("5. Várakozás a termékoldal betöltésére...");
await page.waitForSelector('input[name="quantity"]', { timeout: 20000 });
// 6. Görgetés a mennyiség mezőhöz és kitöltés
console.log("6. Görgetés a mennyiség mezőhöz...");
const quantityInput = await page.locator('input[name="quantity"]');
await quantityInput.scrollIntoViewIfNeeded();
console.log("Darabszám beállítása...");
await quantityInput.fill('3');
await page.screenshot({ path: 'step6_quantity_set.png' });
// 7. Görgetés a kosárba helyezés gombhoz
console.log("7. Görgetés a kosárba helyezés gombhoz...");
const addToCartButton = await page.locator('.btn-add-to-cart');
await addToCartButton.scrollIntoViewIfNeeded();
console.log("Kosárba helyezés...");
await addToCartButton.click();
// 8. Ellenőrzés, hogy a kosárba került a termék
console.log("8. Kosár állapotának ellenőrzése...");
await page.waitForSelector('.cart-items', { timeout: 10000 });
await page.screenshot({ path: 'step8_added_to_cart.png' });
console.log("Termék sikeresen kosárba helyezve!");
} catch (error) {
console.error('Hiba történt:', error);
await page.screenshot({ path: 'error_screenshot.png' });
const htmlContent = await page.content();
require('fs').writeFileSync('error_page.html', htmlContent);
} finally {
await browser.close();
}
})();
Подробнее здесь: https://stackoverflow.com/questions/793 ... playwright
Установка количества товара и добавление его в корзину с помощью Playwright ⇐ Javascript
Форум по Javascript
1736880185
Anonymous
Я новичок в программировании. Я хочу создать скрипт, который будет работать на сайте www.kosarbolt.hu. Скрипт должен:
Искать товар по его SKU (артикул может различаться).
Открыть страницу товара.
Установить желаемое количество.
Добавьте товар в корзину.
Я пробовал реализовать это как на JavaScript, так и на Python, но постоянно сталкивался с проблемами, и проект терпел неудачу.
В будущем Я хочу улучшить этот сценарий для обработки нескольких SKU, представленных в XML-файле. файл и добавьте все эти продукты в корзину.
Может ли кто-нибудь подсказать мне, как этого добиться, или поделиться примером, чтобы начать? Будем очень признательны за любую помощь!
const { chromium } = require('playwright');
(async () => {
const browser = await chromium.launch({ headless: false });
const page = await browser.newPage();
try {
// 1. Oldal megnyitása
console.log("1. Oldal megnyitása...");
await page.setViewportSize({ width: 1280, height: 720 });
await page.goto('https://www.kosarbolt.hu');
// 2. Oldal nagyításának csökkentése
console.log("2. Oldal nagyításának csökkentése...");
await page.evaluate(() => {
document.body.style.zoom = "0.5";
});
// 3. Cikkszám beírása és keresés
console.log("3. Cikkszám beírása és keresés...");
await page.fill('#filter_keyword', '6614');
await page.press('#filter_keyword', 'Enter');
console.log("Keresés elküldve.");
await page.waitForTimeout(2000); // Várakozás a keresési eredmények megjelenésére
await page.screenshot({ path: 'step3_search_sent.png' });
// 4. Cookie sáv elfogadása (ha van)
console.log("4. Cookie sáv kezelése...");
const cookieButton = await page.locator('.cookie-accept-button');
if (await cookieButton.isVisible()) {
await cookieButton.click();
console.log("Cookie elfogadva.");
}
// 5. Várakozás a termékoldal betöltésére
console.log("5. Várakozás a termékoldal betöltésére...");
await page.waitForSelector('input[name="quantity"]', { timeout: 20000 });
// 6. Görgetés a mennyiség mezőhöz és kitöltés
console.log("6. Görgetés a mennyiség mezőhöz...");
const quantityInput = await page.locator('input[name="quantity"]');
await quantityInput.scrollIntoViewIfNeeded();
console.log("Darabszám beállítása...");
await quantityInput.fill('3');
await page.screenshot({ path: 'step6_quantity_set.png' });
// 7. Görgetés a kosárba helyezés gombhoz
console.log("7. Görgetés a kosárba helyezés gombhoz...");
const addToCartButton = await page.locator('.btn-add-to-cart');
await addToCartButton.scrollIntoViewIfNeeded();
console.log("Kosárba helyezés...");
await addToCartButton.click();
// 8. Ellenőrzés, hogy a kosárba került a termék
console.log("8. Kosár állapotának ellenőrzése...");
await page.waitForSelector('.cart-items', { timeout: 10000 });
await page.screenshot({ path: 'step8_added_to_cart.png' });
console.log("Termék sikeresen kosárba helyezve!");
} catch (error) {
console.error('Hiba történt:', error);
await page.screenshot({ path: 'error_screenshot.png' });
const htmlContent = await page.content();
require('fs').writeFileSync('error_page.html', htmlContent);
} finally {
await browser.close();
}
})();
Подробнее здесь: [url]https://stackoverflow.com/questions/79356062/setting-product-quantity-and-adding-it-to-the-cart-using-playwright[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия