@TchernyavskyDaniil

Web scraping Python, как лучше?

Утро доброе.
Есть задание, сделать парсеры для определенных сайтов. Все желательно без API
Одни из этих сайтов - Linkedin, Instagram.
У меня довольно необычный (наверно) вопрос. В этом деле я совсем новичек, решил делать с помощью библиотек: BS4, fake_user, Scrapy, Selenium, Requests. Собственно когда добрался до инсты, столкнулся с проблемой, что подргрузка страницы осуществляется динамически, то есть:
Фото инстраграма (хтмл именно) грузится кусками, если откроем профиль - будет 12, пролистаем вниз, будет не все кол-во, а только часть. Как я понял, с помощью Аякса, ну и то, что сама Инста на Реакте, Вирт DOM (если я не прав, извините, поправьте пожалуйста). Выход я нашел в лице Selenium.
Что я делаю:
Запускаю прогу, Селениум заходит в браузер, авторизуется, выбирает нужного пользователя (которого хочу скрапить) и с помощью прописанного скрипта Скролл вниз на JS, собственно скролит вниз :) Собираю фото, хеш-теги к фото, основную информацию страницы, так же, как и Фото, открываю список подписчиков, скролю определенное кол - во и собираю список их. Все заливаю в Эксель/csv, фото просто выгружаю в папку.
Скажите пожалуйста, как можно проще? Я понимаю, возможно я делаю СОВСЕМ не правильно, но опыта нет.
С Linkedin примерно такая же ситуация. (Селениум - Авторизация - Гуглю 'Python Developer' - Беру определенное кол-во - Каждого открываю, беру инфу и добавляю).
На очереди Твитер, все же наверно через API буду :)
  • Вопрос задан
  • 1541 просмотр
Пригласить эксперта
Ответы на вопрос 2
@l1l1l1
Используйте API - там ничего сложного нет, да же наоборот вы сильно упростите себе работу.
Ответ написан
@Fixid
В общем подход верный и рабочий, но работа через API всегда проще и удобнее.
Дополнительным бонусом получаете маскировку под нормального пользователя.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы