Ответы пользователя по тегу Парсинг
  • Какой выбрать Python фреймворк для системы парсинга сайтов?

    EvilsInterrupt
    @EvilsInterrupt
    System programming, Reversing Engineering, C++
    Scrappy

    Из минусов :
    * Сложность установки на системе Windows. Поэтому один раз нужно будет поставить . Задокументировать процесс установки.
    * У меня были проблемы с кодировками, но это возможно у меня что-то с руками было. Обратите на это свое внимание

    Из плюсов:
    * Многим известен
    * Структурирован
    * Много информации по нему
    Ответ написан
    3 комментария
  • Чем осуществить парсер/граббер защищенного сайта?

    EvilsInterrupt
    @EvilsInterrupt
    System programming, Reversing Engineering, C++
    Ну если человек сидит с одного IP и его не банят, значит надо сделать так, как будто по сайту ходит "человек".

    Для этого предлагаю вспомнить общеизвестную задачу "банерокрутилку". Имеется N банеров. Их надо прокрутить каждый по 1 разу и за K секунд.

    В вашем случае в качестве банеров выступают URL-ы. K секунд делим на Т url-ов и получаем время на каждую ссылку. Но. Чтобы внести не детерменированность, то делаем это с разными промежутками времени перед между очередной итерацией парсинга.

    Посмотрите внимательно на вывод:
    site.ru/?page1
    site.ru/?page2
    ...
    site.ru/?pageN .

    Видите?

    В этом решение сразу проглядывается цикл и это может быть достаточным основанием для распознования парсинга.

    Как правило люди пишут "влоб" потому что головою думать не хотят!

    Надо сделать "прогулку" по сайту так: site.ru/?page15, site.ru/?page179, site.ru/?page1, ... Одну страничку за 5 сек посмотрели, а другую 1минуту и т.д. Понаблюдайте за собою, как вы ходите по сайтам? Вы разве за 1-2 сек успеваете прочесть статью? Уверяю вас вы хаотично бродите по сайту. То в личные сообщения, то в избранные, то в поиск заглянете, то из выдачи поиска по какой-то статье. Вот и в парсинг вносите хаотичность

    Конечный вывод в том, что вам нужно выбирать между:
    • Если хотите быстрый парсинг, значит больше прокси
    • Если хотите с одного IP, то придется пожертвовать временем работы
    Ответ написан
    2 комментария
  • Как узнать в каком месте csv файла ошибка?

    EvilsInterrupt
    @EvilsInterrupt
    System programming, Reversing Engineering, C++
    Варианты решений:
    1. Если программа не Ваша, то поищете csv-linter
    2. Если программа Ваша, то примените log.debug(....)
    3. Если программа не Ваша, то на пишите скрипт lint-ер сами.

    Про нумеровано в порядке предпринимаемых действий.
    Это мое мнение, но думаю есть решение по-лучше!
    Ответ написан
    Комментировать