NinjaDattebayo

Супермодератор

Регистрация: 18.05.2018

Сообщения: 7201

Рейтинг: 3638

NinjaDattebayo

Регистрация: 18.05.2018

Сообщения: 7201

Рейтинг: 3638

regexp

666T1meToHermes6

Z

Регистрация: 29.11.2013

Сообщения: 5373

Рейтинг: 3637

Нарушения: 175

666T1meToHermes6

Регистрация: 29.11.2013

Сообщения: 5373

Рейтинг: 3637

Нарушения: 175

NinjaDattebayo сказал(а):

regexp

Нажмите, чтобы раскрыть...

что ты несешь, кловн KappaFail.png?1616514834

YoshkinKot

Пользователь

Регистрация: 20.06.2016

Сообщения: 19007

Рейтинг: 7500

YoshkinKot

Регистрация: 20.06.2016

Сообщения: 19007

Рейтинг: 7500

666T1meToHermes6 сказал(а):

хочешь сказать есть люди, которые ходят и собирают в ручную с тысячь сайтов названия класса для перебора по всем страницам? не верю что для такого не существует какой-то супер вундервафли

Нажмите, чтобы раскрыть...

ну по идее сначала надо упростить html хотя бы

удалить хотя бы часть мусора со страницы автоматически: навигацию, банеры и т.д.


потом можно добавить разбор каких-то обычных паттернов: див с картинкой и кнопкой, ссылкой

можно сделать pattern matching на всякие "one thousand twenty five" -> 1025


у тебя заместо сотни различных вариантов расположения получится какой-то единый

ну и т.д.


в стиле того как это делают всякие математические солверы

типа wolfram alpha


как бы хотя бы это первая стадия

дальше можно на упрощенную страницу добавить еще один упроститель


ну вот есть например reading mode в браузерах они там section p article div считают "близкими элементами"

и в теории ты можешь всё превратить в единый какой-то тег


ну и если сделать вот такой каскадный упроститель в множество фаз

по отдельным элементам с сотней правил


у тебя на выходе начнуться получаться страницы "well formated"

чтобы их уже какой-нибудь кластеризации подвергнуть



ну короче что-то в стиле reading view в браузерах

что-то в стиле wolfram alpha


что-то в стиле того как компиляторы работают, когда каскад match / substitute происходит

в кучу этапов

Андрей К

Пользователь

Регистрация: 04.05.2024

Сообщения: 2540

Рейтинг: 1290

Андрей К

Регистрация: 04.05.2024

Сообщения: 2540

Рейтинг: 1290

img
666T1meToHermes6 сказал(а):

хочешь сказать есть люди, которые ходят и собирают в ручную с тысячь сайтов названия класса для перебора по всем страницам? не верю что для такого не существует какой-то супер вундервафли

Нажмите, чтобы раскрыть...

Сходить и получить полбеды. Вторая часть задачи - проанализировать и структурировать. И честно говоря не сказал бы, что у меня прям широкий какой то кругозор по тех решениям, но даже на уровне корпоративных софтверных изделий про такое не слышал. Но то что это может быть какая то авторская разработка, которую докручивают уже лет 10 - охотно верю. Достаточно много таких внутренних суперинструментов, которые никто на открытый рынок не отпускает, либо отпускает редко, но без афиширования и за очень серьезные деньги. Подходящий пример из недавнего - кредитный конвеер какого то чешского банка стал основной для мкк в рф. Названий не будет.

Mobsman

Пользователь

Регистрация: 06.09.2016

Сообщения: 24246

Рейтинг: 22454

Нарушения: 10

Mobsman

Регистрация: 06.09.2016

Сообщения: 24246

Рейтинг: 22454

Нарушения: 10

666T1meToHermes6 сказал(а):

Есть тут люди которые занимаются или увлекаются промышленным парсингом (Large-scale web scraping). Речь не о парсинге 1000 страниц с нескольких сайтов, а десятках миллионов страниц с десятков тысячь разных сайтов не имеюших АПИ. По долгу службы приобрел доступ к базе со всех стран ЕС (исторические данные, стоимость доступа 32к $ в год + НДС, офк покупал не за свои) имеющей размерность "3,4ккк строк х 120+ столбцов". Авторы заявляют что на постоянку парсят данные со 80к+ сайтов, хотя уникальных сайтов там 200к+ и все они на разных европейских языках. Я сам собираю данные с 50+ сайтов каждую неделю (сам писал на питоне с 0), но их масштаб вообще космичесский. Хоть логика\алгоритм парсинга одинаковый для всех сайтов, все они имеют уникальные особенности которые нужно учесть. Не верю что при таком масштабе можно что-то делать в ручную. Может кто-то пытался вникнуть в подобный род деятельности.

Нажмите, чтобы раскрыть...

что за исторические данные, не для себя просто майор интересуется

Андрей К

Пользователь

Регистрация: 04.05.2024

Сообщения: 2540

Рейтинг: 1290

Андрей К

Регистрация: 04.05.2024

Сообщения: 2540

Рейтинг: 1290

img
YoshkinKot сказал(а):

ну по идее сначала надо упростить html хотя бы

Нажмите, чтобы раскрыть...

И сверху не забыть обход капчи, клаудфлейр защиты, ддос экранов всяких. В этом плане лучшая защита от парсинга у авито вроде как. Но там это скорее сопутствующий ущерб из за продвинутой защиты от ддоса.

YoshkinKot

Пользователь

Регистрация: 20.06.2016

Сообщения: 19007

Рейтинг: 7500

YoshkinKot

Регистрация: 20.06.2016

Сообщения: 19007

Рейтинг: 7500

Андрей К сказал(а):

И сверху не забыть обход капчи, клаудфлейр защиты, ддос экранов всяких. В этом плане лучшая защита от парсинга у авито вроде как. Но там это скорее сопутствующий ущерб из за продвинутой защиты от ддоса.

Нажмите, чтобы раскрыть...

не ну эт уже проблемы сбора html

web crawler этим занимается


вопрос то в том как данные с разнообразных вёрсток собирать


ну вот match / simplify

куча правил, рекурсивно


и потом кластеризация этого болота


наверное