maxOn
угу, понял, спс попробую.
Вот только остается открытым вопрос зачем тогда есть такие методы как frame.content()
maxOn
может так берется хтмл который именно в этом фрейме, и только поле этого можно юзать события
maxOn
если будут идеи или примеры как реализовывать подобное - отпишите пожалуйста
Назар
что реализовать?
Alex
maxOn
Alex
Понял, буду пробовать
https://pptr.dev/#?product=Puppeteer&version=v5.5.0&show=api-class-frame
поидее когда найдешь свой Frame с ним можно работать как со страницей
maxOn
Дима
подскажите плс, как в goto не ждать полной загрузки страницы. Переходит на страницу, но она грузится пару минут. Перепробовал варианты waituntil, не помогло. Мне нужно чтобы после минимальной загрузки, был клик
Дима
Alex
Дима
Alex
так оно всеравно будет долго грузить, ты ничего не изменил
Дима
та я поставил 10 сек задержку
Alex
Дима
page.setDefaultTimeout(10000);
Alex
Alex
тут ты просто проглатываешь ошибку, посмотри параметры goto функции -
https://pptr.dev/#?product=Puppeteer&version=v5.5.0&show=api-pagegotourl-options
Alex
page.goto(‘http://test.com’, {timeout: 10000, waitUntil: ‘domcontentloaded’})
Дима
да уже перепробовал с документации, просто страница очень долго грузит, там какой-то js каждые пару секунд отправляет запросы, по этому выбивает ошибку timeout и завершает программу, но мне важен html
Дима
в моей ситуации try catch подходит)
Назар
не делай await goto, а сделать await waitForSelector
Alex
Дима
ок, попробую
Gambit501
Всем привет, пинка под зад. Тому кто придумал этот Shadow-DOM
Gambit501
Gambit501
Есть идеи как получить последующие элементы этого теневого дум?
Alex
closed shadow dom - никак
Alex
https://learn.javascript.ru/shadow-dom
Alex*
Alex*
Дима
да, так и делаю, но заметил, что некоторые страницы очень долго грузит, по этому приходится в try catch закидывать goto
Vlad Vaviloff
Дима
вот как-то палит если headless запускать, щас приходится false ставить, то вроде ок, но ресурсы системы ест
Alex*
Можно дальше пойти - вместо puppeter сделать расширение для браузера и полностью эмулировать работу пользователя.
Vlad Vaviloff
Дима
да, пробивает почему-то 2 версии при запуске
Дима
на скрине видно, что вначале видит headless а потом норм версия
Sasha
Если не ошибаюсь то скрыть headless можно
Gambit501
Может это поможет
Gambit501
https://intoli.com/blog/not-possible-to-block-chrome-headless/
Alexander
Может блочить загрузку скриптов или части из них, из-за выполнения которых страница тормозит?
const puppeteer = require('puppeteer');
(async() => {
const browser = await puppeteer.launch();
const page = await browser.newPage();
await page.setRequestInterception(true);
page.on('request', request => {
if (request.resourceType() === 'script')
request.abort();
else
request.continue();
});
await page.goto('https://webkul.com');
await page.screenshot({path: 'webkul.png'});
await browser.close();
})();
Sasha
https://bot.sannysoft.com/ вот тут на тесте посмотри и сравни
Sasha
Пардон с сотового
Назар
Sasha
и юзер и app
Sasha
Доброго дня. Не подскажите как можно вносить шум в canvas ?
Sasha
Ну тут не шум. Тут уникализация
Alex
https://habr.com/ru/post/539156/
Egor
Ребят, привет. Есть кто живой? Подскажите, puppeteer только с chromium'ом работает? Можно открывать сайты в опере, фаерфоксе и других?
Egor
Я делал просто генератор аккаунтов в инсте и потом у меня просто перестала кликаться кнопка Регистрации, хотя в других браузерах работает.
Назар
chromiuum chrome firefox
Назар
да
Egor
да
А как в lauch передать нужный браузер? У меня стоит хром и хромиум, открывается всегда хромимум
Egor
Я в апи доки просто искал, не нашел
Назар
чтоб хром открыть нужно через executablePath в опциях передать путь к хрому. Для firefox. https://tutorial.tips/how-to-launch-the-firefox-browser-using-puppeteer/
Назар
но если нужно много браузеро и удобно с ними работать, то лучше playwright
Egor
Egor
Назар
это папитир, только который от майкрософт с поддержкой разных браузеров
Sasha
А чем хром не устраивает?
Egor
Egor
Точнее не хром, а хромиум
Sasha
Юзай хром)
Egor
А еще подскажите, почему в хромиуме не могу установить расширение, пишет Нет доступа.
Egor
Там блокировки стоят походу, кто знает как разлочить?
Egor
А что здесь не то? Такая ошибка.
Egor
Назар
нужно везде \ заменить на \\