Задать вопрос
Ответы пользователя по тегу Парсинг
  • Как выкачать все gif с сайта?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Попробуйте так.
    wget -r -l1 -nd -A jpg,jpeg,png,gif https://example.com

    Это работало для классических сайтов (.html / WEB 1.0) где контент был статичным.

    К сожалению современный веб контент это вообще ни разу не сайт. Это динамический
    документ который генерируется JS приложением прямо в браузере. И чтобы полноценно
    создать такой контент вам нужен браузер или шука похожая на Selenium. Иммитатор браузера.
    Это требует процесса разработки. Тоесть нужен программист.

    Утилиты наподобие wget, curl, httrack работают только со статическим html и не могут гарантировать
    что картинки будут скачиваться всегда.

    Короче - это опция. Может сработать и может нет.
    Ответ написан
    Комментировать
  • Как защитить SPA от парсинга?

    mayton2019
    @mayton2019
    Bigdata Engineer
    А что ценного школьники парсят с вашего сайта?
    Предложите подписку за деньги. Пускай платят и качают CSV файлами снапшоты данных.

    Нужно сделать безсмысленной саму идею парсинга.
    Ответ написан
    4 комментария
  • Как создать объектную модель содержимого файла?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Ты можешь работать на JavaScript/Node языках. С их точки зрения JSON (JavaScript Object Notation) это и есть
    объект и никаких других преобразований уже делать не надо.
    Ответ написан
  • Подойдет ли для парсинга сайта Амазон библиотека Selenium Stealth на Python?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Ты не задаешь вопроса а просто закидываешь дискуссию.

    Напиши код. Хотя-бы превед-мир на Sel-Stealth и найди какой-то дефект и приходи с ним сюда обсуждать.
    Тогда будет какой-то конструктив. А так чего мы здесь?
    Ответ написан
    Комментировать
  • Как обойти задержку кэширования новости и сразу же получить ее с сервера?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Я думаю что ничего ты на сайте не сможешь сделать. Просто новости публикуются с задержкой.

    Бери сведенья с телеграм канала напрямую.
    Ответ написан
    Комментировать
  • Как распарсить приведённую строку?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Разбей строку по амперсандам. А потом - по знаку равно.
    Ответ написан
    Комментировать
  • Как спарсить whatsapp web?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Почитай сначала раздел developers. Возможно там надо зарегистрироваться и просто взять готовый API
    и пользоваться.
    Ответ написан
    Комментировать
  • Как сделать, чтобы сайт во время парсинга не думал, что я бот?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Поскольку алгоритм Озона не документирован - то мы можем только гадать.

    Сделай дамп сетевого трафика для случая с браузером и с ботом.
    Потом открывай в режиме split screen и сличай глазами. Где-то будет ключевая разница.
    Ответ написан
    Комментировать
  • Как просмотреть номер телефона на OLX?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Без кода никто этот вопрос решать не будет потому что для симуляции этой ошибки надо код написать.
    Я не знаю таких энтузиастов которые сядут и за ништяк напишут. Но по поиску olx parser в гитхабе есть
    проекты. Можете посмотреть как у них реализован сбор телефонов.

    https://github.com/digitalashes/olx-parser
    Ответ написан
    Комментировать
  • Как вытащить данные со страницы Binance?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Зачем лазить в binance с черного хода когда там есть официальный API https://www.binance.com/en/binance-api
    И куча коннекторов под все языки написаны.
    Ответ написан
    1 комментарий
  • Почему сайт падает при парсинге?

    mayton2019
    @mayton2019
    Bigdata Engineer
    сайт падает, в логах ничего

    Так не бывает. Если OOM киллер срубает процесс то где-то об этом остается след.
    Поищи в syslog, в сообщениях D-bus, в логах Апача, в логах Редиски или ПХП.
    Ответ написан
    Комментировать
  • Как сделать постоянный поиск по html элементу?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Появилась потребность в постоянном поиске по содержимому html элементов и тегов.

    Коробочное решение этого вопроса - это разработка парсера. Это кстати еще и решает другую задачу - перебор 150 страниц которая у вас все равно не автоматизируется.

    Ищите программиста и платите ему деньги.
    Ответ написан
    2 комментария
  • Сколько вкладок в браузере Google Chrome я смогу открыть одновременно, если обзаведусь 128 гигабайтами оперативной памяти?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Мне кажется что даже Google не тестировал свою разработку на такие странные лимиты.

    1 310 720 вкладок? Их невозможно увидеть глазами во первых. Да и что за пользователь будет такой фигнёй страдать. Техническая интуиция подсказывает что до того как мы достигнем миллиона - в системе сработают другие лимиты. На количество handles в Windows или какой-то счетчик или пул просто переполнится потому что сильно был не расчитан на такое извращенное использование.

    Память в 128 здесь вобщем непричем. И если на закрытых вкладках java-машина паркуется то и активные страницы кода и данных можно сложить в swap.
    Ответ написан
    Комментировать
  • Как написать свой парсер (поисковик) CSV на Java?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Использовать готовые библиотеки для работы с CSV

    Я не согласен с этим ограничением. Зачем оно? Так хочет твой преподаватель? Это просто неконструктивно. В процессе написания парсера ты соберешь миллион гвоздей и шишек. Лучше брать готовы парсеры которые работают со скорость канала IO (Univocity например).

    Перечитывать полностью весь CSV файл каждый раз (и даже отдельные колонки)

    Я не согласен с этим ограничением. Почему нельзя? Цель найти данные. А не банить операции I/O.
    Если ты делаешь In-Memory DB то так и напиши. А то получаетася такое завуалированное требовие.
    Потому-что решать эту задачу не читая CSV невозможно.

    У меня уже есть некоторое решение, а именно решил так: читаю файл, сравниваю с введенной строкой, и кеширую, если в кеше уже есть такой ключ (кеш реализовал с помощью LinkedHashMap

    Какая-то ерунда. Откуда здесь берется условие "если" ? Тебе не нужно если, чувак. Тебе нужно 100% данных
    положить in-memory сразу во время первого чтения. Причем тебе нужно столько LHM, сколько колонок.

    Я не прошу решить за меня если что) Мне бы задать вектор, что почитать, что посмотреть, потому что какое-то более хорошее решение придумать не получается... Спасибо!

    Скорее всего нет такого вектора. Но ты должен начать читать с Алгоритмов и Структур данных
    Потом почитай про дисковые структуры данных для поиска B+Tree, LSMTree. Почитай как устроены
    таблицы в Cassandra (partitionkey, clustering key). Почитай как работает LRU и кеш блоков.
    Ответ написан
  • При парсинге манги с сайта на определённой фотографии запрос зависает, что делать?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Вот тут пишут как поставить таймаут. По дефолту может быть 30 секунд стоит а ты сделай 3 или 5 секунд

    https://stackoverflow.com/questions/21965484/timeo...
    Ответ написан
    Комментировать
  • Почему новичкам часто советуют парсинг?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Парсинг - это очень простое ТЗ которое можно привязать к опыту работы с сетью и с реальными а не учебными данными. Я думаю что такие ТЗ создают очень ленивые преподаватели и инструкторы. Которые обязательно воспользуются результатом вашего труда. Коллекция парсеров магазинов пром-товаров может быть собрана в пакет и перепродана кому-то еще.

    Парсинг для самого разработчика - это дно-днищенское. Очень быстро прокачаете опыт в BeautifulSoup но кроме этого дальше расти некуда. Парсинг с точки зрения договорённостей о сетевом контракте (endpoint, Swagger, SOAP, gRPG) это тоже сплошное кидалово. Что-бы вы не дизайнили - владелец сайта в любой момент может сломать просто изменив спецификацию или дизайн. Это ставит вас в заведомо рабское положение. Вроде как работу проделали но за 1 день до релиза сайт сделал редизайн и всё зря. А никто не заплатит.

    Я парсил исключительно из любопытсва. Только не на Python а на других языках. Создавал базу прокей (штук 100) и пытался работать через них в параллелизме. Типа аккуратненько. Чтоб не было очевидно. Прокси ломаются. Отъезжают. Вобщем забавно. Можно потратить кучу времени но ненадежно. Все что бесплано - ненадежно.

    Мой друг парсил валютные биржи. Но не ради парсинга а ради самих данных. Это было полезно. Он гонял на них нейросетевые алгоритмы. Торговые роботы типа.

    По поводу опыта работы с Selenium. Я не использовал никогда. Но я думаю что это очень полезный опыт если вы докажете что делаете любые штуки - можете пойти тестером автоматизатором в большую корпорацию. Это уже на несколько левелов выше чем парсинг сайтов. И оплата стабильная.

    Вобщем как цель жизни парсинг - втопку. Но как некий опыт. Попробовать. Поймать тыщи HTTP-ошибок. Парсить разные виды респонсов - это я считаю полезно.
    Ответ написан
    1 комментарий
  • Как реализовать многопоточный парсинг ссылок из файла?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Не всегда нужно кидаться в разработки потоков. Иногда есть подходы которые обеспечивают компромисс.
    Например у тебя 100 000 ссылок. И ты хочешь запустить это в 16 независимых задач (процессов или потоков неважно). Предположим что у тебя уже есть процесс python который решает эту задачу в 1 поток. Далее если мы разделишь эти 100 000 сыслок на 16 частей - то ты можешь запустить 16 копий процесса передав ему параметр. Что-то вроде

    $ python3 parser.py links.lst 0
    $ python3 parser.py links.lst 1
    ....
    $ python3 parser.py links.lst 15


    Здесь параметр links.lst 15 означает что надо брать каждую 15 строку по модулю 16 их исходного файла.
    Ответ написан
  • Как сделать парсинг фотографий из телеграмм чата, Python?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Медиафайлы - это очень широкое понятие. Надо уточнить. Но для сбора информации о картинках можно брать библиотеки поддержки exif https://pypi.org/project/exif/

    С помощью exif можно излвлекать из jpg картинок информацию о размере. И возможно о устройстве которое фоткало. Может гео-координаты если таковые писались. И прочая техническая инфа.
    Ответ написан
  • Как сложить время, которое у меня в переменной форматом 00:00:00?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Во всём виноваты древние Вавилонцы. Это они придумали 60 ричную систему счисления. Вот изза нее у нас и в минуте 60 секунд и в часе 60 минут.

    Переводи каждую строчку время в секунды . Потом складывай. А потом обратно разводи результат в ЧЧ ММ СС.
    Ответ написан
    Комментировать
  • Парсинг сайтов по критериям, база сайтов с критериями где найти?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Я не согласен с первым критерием

    Отсутствие SSL на сайте.


    В настоящее время все переходят на http(s) (SSL) протокол. С тотальной сертификацией доменных имен. И поэтому нешифрованные сайты не то что-бы будут отсутствовать а скорее их общее количество будет стремительно уменшьаться.

    Поэтому и задача еще и усложняется просто поиском этих дохликов которые не могут сдохнуть по причине технической отсталости.

    Вот такие мысли.
    Ответ написан
    6 комментариев