Здравствуйте, товарищи! Сразу скажу: скрипт, которым делюсь, рассчитан в первую очередь на новичков (которых тут тьма). Старожилы, прошу не пинать сильно.

С чего всё началось

Я оказываю услуги по ручному размещению сообщений на форумах. Речь не о спаме, а о нормальных осмысленных постах в правильных разделах. Иногда владельцы форумов сами нанимают меня, чтобы создать видимость живого общения. Схема простая: принимаю заказы, раздаю задания исполнителям, себе оставляю маржу.

Очередной заказ пришёл на 300 форумов по тематике, с которой мы раньше не работали. А значит нужно было найти 300 подходящих площадок а не использовать те на которых есть регистрации, зарегистрироваться на них, зарегистрироваться на них ну и все остальное (найти куда писать и придумать что).

Решил я упростить задачу, так как сотрудников работать за копейки не хватает, и написать несколько инструментов для облегчения задач.

Первое конечно с чего нужно начинать, это парсер. Задал сразу несколько особенностей что хотел видеть в парсере.

Что я хотел получить от парсера

Это конечно простота настройки и запуска, ну и добавил следующие особенности (копипасчу из ридми):

🔍 Поиск и парсинг

  • Мультипоисковик – поддержка Google, Yandex и DuckDuckGo (выбор в конфиге).

  • Гибкая пагинация – настройка стартовой страницы (start_page) и глубины поиска (depth_pages), чтобы работать частями.

  • Умная очередь – список запросов из внешнего файла queries.txt (можно оставлять комментарии).

  • Режимы браузера – видимый режим (для ручного решения капчи) или фоновый (headless).

🛡️ Обход блокировок и защита

  • Интерактивная капча – при обнаружении проверки скрипт останавливается и ждёт, пока вы решите капчу в видимом браузере.

  • Анти-детект – эмуляция реального пользователя, смена User-Agent, отключение флагов автоматизации.

  • Рандомизация – случайные задержки между запросами (имитация человеческого поведения).

🗄️ Обработка данных

  • Дедупликация – автоматическая проверка уникальности по доменам (исключает повторы).

  • Фильтрация – исключение нежелательных доменов (соцсети, доски объявлений, коммерческие площадки) через чёрный список.

  • Конвертация результатов – встроенный модуль convert_to_html.py превращает текстовый список ссылок в удобный HTML-отчёт (results.html).

  • Комментированный вывод – результаты сохраняются с мета-информацией (поисковик, запрос, дата).

⚙️ Логирование и отладка

  • Изолированное хранение – все логи, скриншоты ошибок и капч автоматически сохраняются в папку log/, не засоряя рабочую директорию.

  • Автоочистка – скриншоты решённых капч удаляются автоматически; остаются только те, что потребовали вмешательства или привели к ошибке.

Несмотря на такой функционал, скрипт оказался достаточно компактный.

На этом собственно можно было и остановиться, людям напарсил ссылок и пусть работают, но решил пойти и дальше. Как известно парсит не всегда то что нужно, как же отсортировать, даже с файликом HTML каждую ссылку кликать достаточно не удобно, написал еще чекер (который сам открывает ссылки и тебе нужно отмечать + или - в консоли что бы скрипт отсортировал нужные и не нежные и сейчас пишу авторегер по форумам, для автоматической регистации. А уже ручное заполнение оставим как есть, на том и фишка моих услуг. Кому будут интересны чекер и регер, обращайтесь, выложу в отдельной статье. Статья на моем сайте по этому поводу https://intfaq.ru/page/buxarparser-asinhronnyj-sbor-dannyh-iz-google-jandeksa-i-duckduckgo-s-ruchnym-resheniem-kapchi-i-gibkimi-nastrojkami

Если вам будут интересны чекер и регер — пишите, выложу их отдельными статьями.

Ссылки на проект

Надеюсь, инструмент окажется полезным. Буду рад обратной связи и предложениям!
Качайте, используйте, переделывайте, все бесплатно