• Интересный вопрос знатокам парсинга, парсили ли вы гугл тревел?

    @rPman
    да
    два противоположных метода решения задачи парсинга и автоматизации веб приложений:
    1. реверсинженеринг кода веб приложения, выявление структуры и порядок вызова запросов к серверу, и их вызов
    - много сил на реверсинженеринг, сложная поддержка
    + требует мало ресурсов для работы (считанные килобайты ram, т.е. можно запустить 100500 ботов)
    2. запуск браузера или его симулятора и симуляция действий пользователя
    + почти не требует сил на реверсинженеринг, все доступно прямо из браузера и его developer console, простая поддержка
    - требует много ресурсов для работы (сотни мегабайт ram на запуск одного инстанса и нагружает cpu)
    все остальные методы находятся между этими двумя противоположными.

    чтобы кликнуть на кнопку во втором методе требуется 15 секунд на выявление css selector нужного элемента и написание кода document.querySelector('...').click() (это не selenium, а инжект javascript кода на страницу с помощью tempermonkey), да понадобится еще чуть чуть кода на организацию порядка действий, проверку страницы по наличию элементов (например выявить конец пагинации) но это все несоизмеримо проще чем реверсить код сайта чтобы понять как получить куку авторизации из обфусцированного кода (когда владельцы сайтов защищаются от этого) и вычисление таймингов и порядок загрузки элементов страниц (которых может быть несколько) чтобы добраться до нужной... да конечно не все так защищаются, а многие даже с javascript не заморачиваются и фигачат сайты по старинке с server generated страницами, там тогда все тоже не сложно, но для понимания этого исследование провести придется.
    Ответ написан
    5 комментариев