Защита социальных сетей или как обходить блокировку парсинга?
Здравствуйте, пишу научную работу для института на тему "Несовершенные социальные сети " тема о том, как социальные сети плохо защищают нашу личную информацию, для подтверждения своих слов написал легенькие парсеры по сбору информации со страниц(чтобы не быть просто словоблудом) для многих социальных сетей включая vk, twitter, instagram и для некоторых форумов знакомств, все выше сдалось с первыми же усилиями и отдавали все свои данные, но вот facebook никак не дается, после 30 запросов банит не просто айпишник, а полностью отрубает аккаунт, хотя использую selenium вместе с скролингом страниц, подменой ip, user-agent и имитацией движений мыши. Подскажите как побороть этого великана.
P.S Статьи в гугле уже прочитаны
соц сети можно парсить, но вот только не выходит. только я нахожу это ироничным? и если честно я не вижу как возможность спарсить публичные данные со страницы человека относится к "плохо защищают нашу личную информацию". фотография моей голой задницы перестает быть личной информацией как только я публично запостил ее в интернет.
rsefsE, фейсбук защищает свою возможность продавать эти данные рекламщикам. И оптимизирует затраты на железо, т.к. вместо одного бота можно за те-же ресурсы обслужить пару десятков человек.
Парсить FB надо на мощных виртуалках, на каждой виртуалке по 5-10 запущенных Chrome, никаких selenium. Переписываешь скрипты на Userscript. Много IP достигается покупкой premium-proxy-list. Однотипный поиск делать бесполезно. Надо смотреть фото, читать комменты, соблюдать рандомные задержки. Изредка ставить лайки. Не забывай эмулировать разные разрешения экрана и разные размеры окон.
kocherman, Он прекрасно всё эмулирует, абсолютно все действия. Плох он только тем, что для просмотра и взаимодействия с элементами он устанавливает navigator.webdriver и в принципе его можно легко детектировать по разным особым предметам, вроде расширения экрана и многих других уловок, которые очень хорошо анализирует FB. А так он полностью эмулирует все действия браузера, даже больше вам скажу, selenium это всего лишь посредник между самим браузером и языком программирования, так называемый драйвер. Юзер скрипты тоже врядли или смогут помочь, хотя это определённо лучше чем selenium.
Ternick, Это просто смешно. Я смотрю на два дистрибутива: ChromeDriver и Chrome. Распаковал оба архива.
В первом архиве один бинарник на 10.5Мб.
Во втором - папки/файлы общим объемом 225Мб.
И вы мне хотите сказать, что первое - это тоже самое что и второе, просто без иконки хрома, светлой/тёмной темы (т.к. в режиме headless они просто не нужны) - всем этим объясняется разность объёма дистрибутива?
Помимо того, что уже сказано:
1. Парсить нужно не перебором линков в списке, а "вглубину" связанных линков.
После, сортировать их и замерять прогресс спарсенных данных в нужном списке - уже у себя.
2. Парсинг-профиль: на каждый акк соц.сети свой User-Agent (мобильный!), который должен быть постоянен и не более 5-ти разных ip одного города в час, не более 20-30ти разных ip одного города (или региона/страны, что хуже) в сутки: т.е. они должны повторяться как при перемещении по одному городу с мобилой в строгом порядке по "цепочке" и продолжительности (интервала времени) их использования.
3. Парсить только отображённые линки, а не то, что в коде страницы.
4. Соблюдать те же тайминги, что и при ручной навигации.
5. Полностью и корректно! имитировать весь пользовательский ввод текста в поля и навигацию по линкам с помощью тача: соблюдать процент ошибочного тача как при обычном использовании.