Поверхностное видео рассматривающее частный случай - у искомого элемента не всегда есть ID чаще всего искомые значения необходимо искать в class, и такой самый используемый метод в ролике не показан.
Здравствуй, отличное видео! А можешь пожалуйста еще объяснить, как вывести полученные данные в какой-нибудь файл, будь то excel документ, или в обычный текстовый документ?
Что-то звучит сомнительно... А кто даст доступ к исполнению подобных команд на компе, когда мой сайт с сервера захочет парсить данные, когда пользователь на него зайдёт? Наверняка же есть команда, позволяющая парсить данные по ссылке прямого назначения...
Привет. В самом начале: const puppeteer = require("puppeteer"); пишет ошибку [ERR_PACKAGE_PATH_NOT_EXPORTED] и бла бла бла.. Это что то при установке puppeteer накосячилось? Ошибок не показывало при установке, что может быть?
@@enriquevalencia7415 версиями ноды? Супер что получилось. Я тоже много времени убил что бы хотя бы одну строчку кода написать, куча багов и ошибок выдавало.
@@Illya.Landar Да. Я сначала делал на старом компе, там вин7, по умолчанию ноде не ставится, надо искать более старую версию, я несколько вариантов устанавливал, всё было ок, но puppeteer не вызывался, ошибку давало [ERR_PACKAGE_PATH_NOT_EXPORTED] всё время. Затем попробовал на другом компе с вин10, всё ок, и для чистоты эксперимента на старом компе поменял систему на десятку, попробовал на нём и тоже всё ок.
@@Illya.Landarили зайти под профилем браузера Который под капотом пупера Стоит хромиум как ток авторизоваться Данные идут в профиль браузера и не нужно никакие cookie сохранять и передавать
Подскажите пожалуйста, а если нужно забрать с сайта не текст, а значение атрибута(если я правильно выражаюсь). К примеру: id = “1456788_2” tittle = “75ml” price = “240”. Нужно забрать 240(значение может меняться, это цена). Какую строчку в коде нужно изменить на что? Заранее большое спасибо, не могу найти ответ нигде, не сильна в js
Есть разные способы. Кликать на пагинацию. Переходить в цикле по ссылке если ссылка в стиле url.com&page=1 url.com&page=2 url.com&page=3 Парсить следующую ссылку в пагинации и переходить по ней. Ето основные 3 способа
Что бы показать человеку как работает технология puppeteer. Скриншот понятней чем сразу идти в разметку, html тэги и javascript. Ну в дальнейшем естественно показал как с разметки доставать данные.
Огонь) попробовал твои штуки и заметил, что например гугл вообще в этом плане не френдли. Классы либо tailwind либо с названием рандомных букв. Как с таким обращаться?
@@Lotpite да гугл не френдли. При помощи мета тэгов. там кнопка с классм странным может быть но с тэгом type='button' или у родителя такое может быть особенный читаемые статический мета тэг и от него пляшешь
Ну смотря как пагинация устроена. Если по ссылками то по ссылкам можно переходить типа так url/1 url/2 и тд в цикле. Если кнопками то page.click('путь к кнопке') Если скролить надо то window.scrollBy(0,100)
Сделал для себя в новом стиле ролик. Как вам?
красава
@@админскийБубен благодарю
отлично
Дружище, на чистом JS такое возможно ? Без библиотек сторонних
@@palgeboможно, но зачем? Библиотеки же написаны на чистом js. Ты в итоге придешь к тому что бы создать свою библиотеку
годно. продолжай
охрененно!
Благодарю
Спасибо что помог, лайк + подписка)
❤❤❤❤
жаль раньше не встречал тебя на просторах ютуба, лайк и подписка!
Обращайся)
нужно больше видео про парсинг
У меня есть несколько на канале
Можно вопрос почему при установке Puppeteer в консоли зависает установка
Кинь скрин мне в телеграм. Мой контакт в описании телеграм группы есть
@@Illya.Landar Я уже нашёл решение спасибо
@@ДЕД-11 Огонь
Дополню, тоже была проблема. Решается она или прописыванием puppeteer в package.json вручную или через yarn
Поверхностное видео рассматривающее частный случай - у искомого элемента не всегда есть ID чаще всего искомые значения необходимо искать в class, и такой самый используемый метод в ролике не показан.
Потому что всего 10 минут. Все тонкости парсинга и за 10 часов не расскажешь
Поставь вместо решетки точку
Спсб. На вашем ,этом видео у меня получился мой первый парсер! Только вот форму не нахожу, где форма каторую заполнить ?
Супер, форма уже не работает. Ссылки на ролики в описании
Здравствуй, отличное видео! А можешь пожалуйста еще объяснить, как вывести полученные данные в какой-нибудь файл, будь то excel документ, или в обычный текстовый документ?
Есть в ноде команда fs.writeFileSync() по гугли и выведи данные в файл json через эту команду
а как парси страницу с javascript если она бесконечная ,типа надо прокручивать вниз ,ну ана очень большая
Прокручивать страницу, ждать пока она подгрузиться, потом парсить данные.
ну я прокручиваю страницу на 10% и у меня оперативка 16gb наполнятся 😅ии грузит пк 😢
@@catalincuruliuc9349 такое может быть если ты парсишь медиа контент, если текст, то 16 гб вполне хватит
Скажи пожалуйста, а если выпадающие списки листы содержат названия, то их так же можно спарсить?
Спарсить можно все
А как сделать без открытия браузера? Допустим если у меня linux server
headless: true
Без открытия браузера ты не отрендеришь страницу сайта
Headless тоже запускает браузер
Но не как окно, а как процесс
Довольно таки сложно, кто полностью не изучил JS, не поймет норм что происходит, нужны более детальные объяснения
За 10 мин детально все не расскажешь. Детальную информацию по созданию парсеров можно получить заполнив форму в описании.
Так изучи JS
Скажите пжлст - здесь , в этом видео вы показываете парсер работает в канале ютуб, а как создать что бы работал в телеграмм ? в веб версии ?
Это отдельный ролик нужно)
Failed to launch the browser process! undefined. Бла-бла. Failed to load Chrome Dll from бла бла
А если я использую антидетект браузер dolphin anty и у меня несколько прокси, как можно сделать так чтобы он открывал браузер с нужным прокси?
Ну он открывает свой браузер, который похожь на chrome. В параметрах запуска скрипта можно установить под каким прокси ты заходишь
Здравствуйте, а можно к этому парсеру прикрутить какой нибудь web интерейфейс?
Можно
@@Illya.Landar а можете подсказать как? Видео какое-нибудь или что загуглить, просто не могу найти
@@igrovojimpotent Делаешь из скрипта АПИ. А к Апи прикручиваешь веб сайт
@@Illya.Landar Спасибо большое!
@@igrovojimpotent пожалуйста
Что-то звучит сомнительно... А кто даст доступ к исполнению подобных команд на компе, когда мой сайт с сервера захочет парсить данные, когда пользователь на него зайдёт?
Наверняка же есть команда, позволяющая парсить данные по ссылке прямого назначения...
По сути любой арендованный сервак в этом сможет помочь. Просто там будет исполняться код
А твой сайт через апи обращается к серверу, и все
если удалось спарсить два поля артикул и цена, то можно ли запихать новые данные в поле цена ? Конечно, доступ к учетке есть. Или это уже БД?
То как ты упорядовачиваешь данные зависит от тебя
Извините. Вроде заполнил форму, нажал на кнопку, но ничего не происходит. Это так и должно быть, или проблема в форме?
подскажи пожалуйста. если без vpn сайт не доступен то как мне инфу брать с него
Прикручиваешь VPN к парсеру. А точнее прокси той страны где можно зайти свободно на сайт
К сожалению форма на получение урока по парсингу не работает. Очень его хотелось бы получить
проверьте, мб забыли () в самом конце
Привет. В самом начале: const puppeteer = require("puppeteer"); пишет ошибку [ERR_PACKAGE_PATH_NOT_EXPORTED] и бла бла бла.. Это что то при установке puppeteer накосячилось? Ошибок не показывало при установке, что может быть?
Да проблема с установкой или с нодой
@@Illya.Landar Вопрос закрыт. Проблема была с версиями. Теперь работает. Спасибо.
@@enriquevalencia7415 версиями ноды? Супер что получилось. Я тоже много времени убил что бы хотя бы одну строчку кода написать, куча багов и ошибок выдавало.
@@Illya.Landar Да. Я сначала делал на старом компе, там вин7, по умолчанию ноде не ставится, надо искать более старую версию, я несколько вариантов устанавливал, всё было ок, но puppeteer не вызывался, ошибку давало [ERR_PACKAGE_PATH_NOT_EXPORTED] всё время. Затем попробовал на другом компе с вин10, всё ок, и для чистоты эксперимента на старом компе поменял систему на десятку, попробовал на нём и тоже всё ок.
@@enriquevalencia7415 огонь
Привет. А подскажи..что делать если перед тем как собирать данные нужно авторизоваться на сайте?
С помощью puppeteer можно авторизоваться а потом собрать данные. Или авторизоваться с помощью cookie
@@Illya.Landarили зайти под профилем браузера
Который под капотом пупера
Стоит хромиум как ток авторизоваться
Данные идут в профиль браузера и не нужно никакие cookie сохранять и передавать
Подскажите пожалуйста, а если нужно забрать с сайта не текст, а значение атрибута(если я правильно выражаюсь). К примеру: id = “1456788_2” tittle = “75ml” price = “240”. Нужно забрать 240(значение может меняться, это цена). Какую строчку в коде нужно изменить на что? Заранее большое спасибо, не могу найти ответ нигде, не сильна в js
получаешь не innerText а InnerHtml. Ты получаешь html в котором есть твои атрибуты. Остается их только достать
Прикольно, а как сделать обход по страницам к примеру есть 10 страниц и надо все заголовки у них взять?
Есть разные способы.
Кликать на пагинацию.
Переходить в цикле по ссылке если ссылка в стиле url.com&page=1
url.com&page=2
url.com&page=3
Парсить следующую ссылку в пагинации и переходить по ней.
Ето основные 3 способа
@@Illya.Landar а если нету пагинации? И только под ресурсы (site.ru/page/pag2)?
@@fishingscript
Ну переходи по ссылке просто вот так
(site.ru/page/pag2)
(site.ru/page/pag3)
(site.ru/page/pag4)
@@Illya.Landar А если просто в массив запихнуть все эти ссылки? Этот код спарсит их?
@@YOZHIK_YT если сделаешь цикл то да
Можешь заново скинуть ссылку на форму
палец вверх от СЕООНЛИ
Как парсить если сайт доступен только по VPN?
С помощью proxy. В puppeteer есть возможность использовать прокси.
Смысл открывать браузер и делать скриншот, если тайтлы берутся из разметки.
Что бы показать человеку как работает технология puppeteer. Скриншот понятней чем сразу идти в разметку, html тэги и javascript.
Ну в дальнейшем естественно показал как с разметки доставать данные.
@@Illya.Landar мне кажется это больше запутать
а можно запускать этот парсер на удаленном сервере ? Допстим через тг бот
Да на удаленном сервере, можно и нужно. И потом отправлять данные которые спарсили отправлять в тг бот
Огонь) попробовал твои штуки и заметил, что например гугл вообще в этом плане не френдли. Классы либо tailwind либо с названием рандомных букв. Как с таким обращаться?
@@Lotpite да гугл не френдли. При помощи мета тэгов. там кнопка с классм странным может быть но с тэгом type='button' или у родителя такое может быть особенный читаемые статический мета тэг и от него пляшешь
@@Illya.Landar спасибо, ты крут. Подписка колокольчик
@@Lotpiteпожалуйста обращайся
А переход по страницам ? )
Ну смотря как пагинация устроена. Если по ссылками то по ссылкам можно переходить
типа так
url/1
url/2
и тд в цикле.
Если кнопками то page.click('путь к кнопке')
Если скролить надо то window.scrollBy(0,100)
Я один не вижу форму?
украл текст из превью у howdyho, молодец
Ну тут автор кодить умеет не то что хауди хо😅
[...document.querySelectorAll('#video-title')].map(elem => elem.innerText) вместо Array.from() как вариант
ну еще цикл for напиши... Работает и ладно
@@olegonkos а цикл причём ?
@@raff_m_d6971 а map() причем?
@@raff_m_d6971 типа неудобен твой способ.Но он имеет шанс на существование