Реализация экспорта спарсенных данных (CSV/JSON/API)

Наша компания занимается разработкой, поддержкой и обслуживанием сайтов любой сложности. От простых одностраничных сайтов до масштабных кластерных систем построенных на микро сервисах. Опыт разработчиков подтвержден сертификатами от вендоров.

Разработка и обслуживание любых видов сайтов:

Информационные сайты или веб-приложения
Сайты визитки, landing page, корпоративные сайты, онлайн каталоги, квиз, промо-сайты, блоги, новостные ресурсы, информационные порталы, форумы, агрегаторы
Сайты или веб-приложения электронной коммерции
Интернет-магазины, B2B-порталы, маркетплейсы, онлайн-обменники, кэшбэк-сайты, биржи, дропшиппинг-платформы, парсеры товаров
Веб-приложения для управления бизнес-процессами
CRM-системы, ERP-системы, корпоративные порталы, системы управления производством, парсеры информации
Сайты или веб-приложения электронных услуг
Доски объявлений, онлайн-школы, онлайн-кинотеатры, конструкторы сайтов, порталы предоставления электронных услуг, видеохостинги, тематические порталы

Это лишь некоторые из технических типов сайтов, с которыми мы работаем, и каждый из них может иметь свои специфические особенности и функциональность, а также быть адаптированным под конкретные потребности и цели клиента

Предлагаемые услуги
Показано 1 из 1 услугВсе 2065 услуг
Реализация экспорта спарсенных данных (CSV/JSON/API)
Простая
от 1 рабочего дня до 3 рабочих дней
Часто задаваемые вопросы

Наши компетенции:

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

Последние работы

  • image_website-b2b-advance_0.png
    Разработка сайта компании B2B ADVANCE
    1262
  • image_web-applications_feedme_466_0.webp
    Разработка веб-приложения для компании FEEDME
    1171
  • image_websites_belfingroup_462_0.webp
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    874
  • image_ecommerce_furnoro_435_0.webp
    Разработка интернет магазина для компании FURNORO
    1094
  • image_crm_enviok_479_0.webp
    Разработка веб-приложения для компании Enviok
    831
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Разработка веб-сайта для компании ФИКСПЕР
    851

Реализация экспорта спарсенных данных (CSV/JSON/API)

Спарсенные данные нужны в разных форматах: аналитику — CSV для Excel, разработчику — JSON по API, интеграции с другой системой — webhook или прямой доступ к endpoint-у.

CSV-экспорт

Для больших объёмов (> 10k строк) не генерируем весь файл в памяти — стримим:

import csv
import io
from flask import Response, stream_with_context

def export_csv(site_id: int, filters: dict):
    def generate():
        output = io.StringIO()
        writer = csv.DictWriter(output, fieldnames=[
            'id', 'name', 'price', 'currency', 'url', 'in_stock', 'scraped_at'
        ])
        writer.writeheader()
        yield output.getvalue()
        output.truncate(0); output.seek(0)

        for product in stream_products(site_id, filters):
            writer.writerow(product)
            yield output.getvalue()
            output.truncate(0); output.seek(0)

    return Response(
        stream_with_context(generate()),
        mimetype='text/csv',
        headers={'Content-Disposition': 'attachment; filename=export.csv'},
    )

JSON API

REST endpoint с фильтрацией, пагинацией и выбором полей:

GET /api/v1/scraped-products?site_id=7&in_stock=true&fields=name,price,url&page=1&per_page=100
{
  "data": [
    { "name": "Кроссовки Nike Air Max", "price": 89.99, "url": "https://..." }
  ],
  "meta": {
    "page": 1,
    "per_page": 100,
    "total": 4823
  }
}

Аутентификация — API-ключ в заголовке X-API-Key. Доступ ограничивается по IP и rate-limit (100 запросов/мин).

Webhook-нотификация

После завершения парсинга или при обновлении данных система отправляет POST на webhook URL клиента:

import httpx, hashlib, hmac

def send_webhook(url: str, secret: str, payload: dict):
    body = json.dumps(payload).encode()
    sig = hmac.new(secret.encode(), body, hashlib.sha256).hexdigest()
    httpx.post(url, content=body, headers={
        'Content-Type': 'application/json',
        'X-Signature-SHA256': f'sha256={sig}',
    }, timeout=10)

Подпись позволяет получателю проверить подлинность запроса.

Сроки реализации

CSV и JSON API с базовой аутентификацией — 1–2 рабочих дня. Webhook с подписью, фильтры, выбор полей — ещё 1 день.