Я разработал Chrome-расширение, которое собирает данные непосредственно с открытых страниц Freelancehunt.
Расширение определяет тип страницы и извлекает информацию из HTML и DOM.
Какие страницы обрабатываются
страница проекта;
переписка с заказчиком;
страница ставок;
собственная заявка на проект;
блоки с портфолио и похожими работами.
Какие данные собираются
Из проекта:
ID проекта;
название;
описание;
бюджет;
тип бюджета;
дата публикации;
статус;
ссылка на проект.
Из переписки:
ID диалога;
имя заказчика;
профиль заказчика;
первое входящее сообщение;
дата первого ответа;
последняя активность;
связанный проект.
Из собственной ставки:
ID заявки;
текст отклика;
цена;
срок выполнения;
дата подачи;
ссылки на портфолио;
ссылка на похожий проект.
Как работает парсер
Страница Freelancehunt
→ определение типа страницы
→ поиск нужных DOM-элементов
→ извлечение текста и атрибутов
→ нормализация данных
→ проверка обязательных полей
→ передача данных в CRM
Для устойчивости реализованы:
несколько резервных CSS-селекторов;
ожидание загрузки динамических элементов;
MutationObserver;
проверка соответствия проекта;
диагностика пропущенных полей;
защита от повторного захвата;
последовательность: переписка → проект → ставка.
В результате обычные страницы Freelancehunt превращаются в структурированные карточки лидов в отдельной CRM.
Расширение определяет тип страницы и извлекает информацию из HTML и DOM.
Какие страницы обрабатываются
страница проекта;
переписка с заказчиком;
страница ставок;
собственная заявка на проект;
блоки с портфолио и похожими работами.
Какие данные собираются
Из проекта:
ID проекта;
название;
описание;
бюджет;
тип бюджета;
дата публикации;
статус;
ссылка на проект.
Из переписки:
ID диалога;
имя заказчика;
профиль заказчика;
первое входящее сообщение;
дата первого ответа;
последняя активность;
связанный проект.
Из собственной ставки:
ID заявки;
текст отклика;
цена;
срок выполнения;
дата подачи;
ссылки на портфолио;
ссылка на похожий проект.
Как работает парсер
Страница Freelancehunt
→ определение типа страницы
→ поиск нужных DOM-элементов
→ извлечение текста и атрибутов
→ нормализация данных
→ проверка обязательных полей
→ передача данных в CRM
Для устойчивости реализованы:
несколько резервных CSS-селекторов;
ожидание загрузки динамических элементов;
MutationObserver;
проверка соответствия проекта;
диагностика пропущенных полей;
защита от повторного захвата;
последовательность: переписка → проект → ставка.
В результате обычные страницы Freelancehunt превращаются в структурированные карточки лидов в отдельной CRM.