ru24.pro
Работа
Январь
2025
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31

Разработать парсер linkedin на телеграмм боте

0

1. Цель проекта

Создание парсера для LinkedIn, который будет работать через Telegram. Парсер должен собирать информацию о пользователях и компаниях с LinkedIn, включая:

  • Имя пользователя
  • Ссылка на профиль пользователя
  • Название компании
  • Ссылка на профиль компании
  • Почтовые адреса (по возможности)
  • (пункты могут добавляться в зависимости от возможностей api)
Результаты поиска должны экспортироваться в Google Таблицы для дальнейшего использования и обработки.

Парсинг будет осуществляться с использованием следующих библиотек:

2. Основные функциональные требования

  1. Интерфейс с Telegram:
    • Создать бота в Telegram, который будет взаимодействовать с пользователями.
    • Пользователь может отправлять запросы для поиска профилей на LinkedIn и получать результаты в виде сообщений в Telegram.
    • Результаты поиска, помимо вывода в Telegram, должны быть экспортированы в Google Таблицы.
  2. Поиск на LinkedIn:
    • Парсинг информации по ссылке на поиск с выставленными фильтрами
    • Реализовать поиск через LinkedIn Search и Sales Navigator.
  3. Обработка ошибок:
    • Обработка ошибок, возникающих при неудачном запросе, блокировке аккаунтов и других нештатных ситуациях.
  4. Экспорт в Google Таблицы:
    • После получения результатов поиска, парсер должен автоматически экспортировать данные в Google Таблицы.
    • Для каждого поиска создавать новый лист, с уникальным названием по имени пользователя
    • Таблица должна содержать следующие колонки:
      • Имя пользователя
      • Ссылка на профиль
      • Название компании
      • Ссылка на компанию
      • Почта (если доступно)
    • Для работы с Google Таблицами необходимо использовать Google Sheets API для автоматического создания и редактирования таблиц.

3. Функциональные особенности

  1. Телеграмм-бот:
    • Бот должен принимать команды от пользователя через Telegram:
      • /start — запуск бота и приветственное сообщение.
      • /search <поисковый запрос> — выполнение поиска по ключевому запросу на LinkedIn, вывод результатов в Telegram и экспорт их в Google Таблицы.
      • /help — описание доступных команд.
    • Каждому результату поиска должна быть дана краткая информация:
      • Имя пользователя.
      • Ссылка на профиль пользователя.
      • Название компании.
      • Ссылка на профиль компании.
      • Почтовый адрес (если доступно).
  2. Парсинг LinkedIn:
    • Использовать linkedin-scraper для получения информации с публичных страниц пользователей и компаний (если доступны).
    • Использовать linkedin-api для получения информации о профиле пользователя, включая имя, компанию, позицию и почту (если доступна).
  3. Получение данных:
    • Для пользователей, чьи страницы доступны:
      • Имя и фамилия.
      • Профильная ссылка на LinkedIn.
      • Компания, где работает пользователь.
      • Ссылка на страницу компании.
      • Электронная почта (если публично доступна).
  4. Ограничения:
    • Параллельное выполнение запросов для ускорения поиска, если возможно.
    • Для избежания блокировок необходимо добавить случайные задержки между запросами.
    • Отображение ошибки в случае блокировки пользователя или проблемы с запросом.
  5. Данные безопасности и конфиденциальности:
    • Соблюдать политику конфиденциальности LinkedIn и избегать парсинга данных, которые противоречат их условиям использования.
    • Защита данных пользователей (например, пароли) и соблюдение стандартов безопасности для Telegram-ботов.

4. Технические требования

  1. Среда разработки:
    • Python 3.8 или выше.
    • Использование библиотек python-telegram-bot для создания бота.
    • Использование linkedin-scraper и linkedin-api для получения данных с LinkedIn.
    • Использование Google Sheets API для автоматического экспорта данных в таблицы.
  2. Интеграция с Telegram:
    • Использование Telegram Bot API для создания и работы с ботом.
    • Получение сообщений от пользователей и отправка ответов.
  3. Архитектура:
    • Парсер должен быть многозадачным, чтобы обрабатывать несколько запросов одновременно, без блокировки аккаунта.
    • Реализовать использование баз данных или файлов для хранения временных данных (например, для отслеживания ограничений и очереди запросов).
  4. Интеграция с Google Sheets API:
    • Для работы с Google Таблицами необходимо использовать OAuth 2.0 для авторизации и доступа к Google Sheets API.
    • После получения результатов поиска парсер должен автоматически создать новый лист в Google Таблице, заполнить его соответствующими данными и предоставить ссылку на таблицу пользователю.

5. Этапы разработки

  1. Этап 1 — Создание Telegram-бота:
    • Настройка Telegram-бота и его интеграция с Python.
    • Разработка команд для бота (например, /start, /search, /help).
  2. Этап 2 — Реализация парсера LinkedIn:
    • Настройка и тестирование библиотек linkedin-api и linkedin-scraper.
    • Реализация логики поиска и извлечения данных из LinkedIn.
    • Обработка информации о пользователях и компаниях.
  3. Этап 3 — Интеграция с Telegram-ботом:
    • Интеграция парсера с Telegram-ботом для отправки результатов поиска.
    • Обработка команд и вывод результатов пользователю.
    • Интеграция с Google Sheets API для автоматического экспорта данных.
  4. Этап 4 — Тестирование:
    • Проведение тестирования бота на различных данных и исправление ошибок.
    • Проверка работы бота в условиях ограничений и капч.
  5. Этап 5 — Развертывание и поддержка:
    • Развертывание бота на сервере или в облаке.
    • Обеспечение стабильной работы и мониторинг.

6. Дополнительные требования

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

7. Ожидаемые результаты

  • Рабочий Telegram-бот, который позволяет искать информацию на LinkedIn и экспортировать данные в Google Таблицы.
  • Результаты поиска, включающие имя пользователя, ссылку на профиль, компанию, ссылку на компанию и почту (если доступно), экспортируются в таблицу.