-
Ограничивает ли биржа стек технологий при выполнении заказов на сбор массивов данных?
Нет, выбор инструментов полностью на вашей стороне, если он решает задачу клиента. На eTXT заказчики принимают результаты работы, собранные как классическими скриптами на Python (requests, BeautifulSoup, Scrapy для Enterprise-задач), так и мощными средствами автоматизации, такими как ZennoPoster. Если вы работаете с визуальными парсерами (Octoparse, ParseHub), убедитесь, что структура итогового CSV/JSON файла полностью совпадает с требованиями клиента. Главное правило — согласовать инструмент (язык программирования или софт) до принятия заказа в работу.
-
Законен ли парсинг сайтов?
Сбор публичной информации (которая видна без логина) в целом легален в РФ. Но нужно соблюдать robots.txt, не перегружать сайт запросами (делать задержки), не обходить блокировки капчи грубой силой. Запрещено собирать персональные данные без цели обработки.
-
Кто оплачивает аренду серверных мощностей, резидентных прокси и сервисов антикапчи?
Если задача сформулирована как «Собрать базу и прислать файл», то все затраты на обход блокировок (Cloudflare, Qrator) и покупку прокси лежат на вас — они должны быть заложены в стоимость вашего отклика. Вы продаете готовый результат. Если же вы пишете скрипт для регулярного извлечения данных, который заказчик будет запускать на своей стороне, клиент обязан самостоятельно зарегистрироваться в сервисах антикапчи/прокси и предоставить вам API-ключи для интеграции в код.
-
Обязан ли я передавать заказчику исходный код (скрипт), если в задании просили только таблицу с данными?
Нет, не обязаны. Юридически и технически предмет договора зависит от формулировки заказа. Если в ТЗ указано «Собрать базу контактов», вы передаете исключительно итоговый файл (Excel/JSON/CSV) — скрипт остается вашей интеллектуальной собственностью. Если же в названии и описании задания сказано «Разработать парсер / Написать скрипт», вы обязаны передать исходный код с инструкцией по запуску. Во избежание недопониманий фиксируйте формат сдачи результата в чате перед подтверждением сделки.
-
Должен ли я заниматься очисткой данных (дедупликацией, удалением пустых ячеек), если в ТЗ написано просто «спарсить всё»?
Строго по правилам — вы не обязаны делать сложную постобработку, если она не описана в техническом задании. Однако выдача сырого, "грязного" массива с дублями и HTML-мусором сильно снижает вероятность того, что клиент вернется к вам снова. Если вы видите, что данные содержат много мусора, предложите заказчику услугу по очистке датасета (например, средствами библиотеки Pandas) за дополнительную плату до начала работ.
-
Что происходит в безопасной сделке, если источник (API или верстка донора) меняет структуру прямо во время выполнения заказа?
Масштабные изменения на стороне источника в процессе работы признаются форс-мажором. Безопасная сделка и арбитраж биржи опираются на первоначальное ТЗ. Если для завершения работы требуется полностью переписывать логику авторизации, XPath селекторы или эндпоинты, вы имеете право запросить увеличение бюджета. Если заказчик отказывается, вы можете обратиться в арбитраж с доказательствами изменения архитектуры донора для получения частичной оплаты за уже проделанную работу.
-
Входит ли в мои обязанности бесплатная починка скрипта, если он сломался через два месяца после сдачи заказа?
Нет. Любой код, взаимодействующий со сторонними источниками, имеет свой срок годности. Если вы успешно сдали рабочий парсер, заказчик его проверил и нажал кнопку принятия работы, ваши обязательства по данной сделке выполнены. Любые поломки скрипта, возникшие в будущем из-за изменения структуры сайта-донора, обновления протоколов безопасности или смены API, классифицируются как техническое обслуживание. Это оформляется как новый заказ за отдельную плату.
-
Что делать, если заказчик не может открыть собранный CSV-файл или жалуется на «иероглифы» вместо текста?
Это классическая проблема с кодировкой (чаще всего конфликт UTF-8 и Windows-1251 при открытии файла в старых версиях MS Excel). Чтобы избежать возврата задания, всегда уточняйте у клиента на этапе обсуждения, в какой именно программе или CRM он будет использовать базу. Хорошим тоном считается отправка тестового файла на 50–100 строк до начала сбора основного массива данных. В рамках арбитража биржи, если вы сдали данные в общепринятой кодировке (например, UTF-8), а специфика софта клиента не была указана в ТЗ, правда будет на вашей стороне.
-
Клиент хочет запускать парсер самостоятельно, но не умеет работать с консолью и кодом. Какой стек лучше использовать, чтобы закрыть такой заказ без долгих консультаций?
Если у заказчика нет технического бэкграунда, передача ему скриптов на Python (даже простейших на BeautifulSoup) может обернуться долгими объяснениями по установке библиотек (pip install requests и т.д.) В таких случаях оптимально использовать мощные визуальные комбайны вроде ZennoPoster (можно скомпилировать бота в отдельный исполняемый файл ZennoBox) или предложить клиенту настроить проекты в облачных no-code сервисах типа ParseHub и Octoparse. Если же клиент настаивает на Python, вам придется обернуть скрипт на Scrapy в удобный графический интерфейс (например, через Tkinter или Telegram-бота) или упаковать в Docker-контейнер.