Skip to content

a-iceberg/articles-generator

Repository files navigation

Articles Generator

Инструмент для автоматической генерации статей на основе CSV-файла с группами ключевых слов.
На выходе формируется таблица articles.csv с заголовками, слагами, ТЗ и готовым HTML-контентом.
Клиент получает логи обработки в реальном времени прямо в консоли.
Все шаги (создание окружения, проверка/установка зависимостей, запуск генерации и стрим‑логи) выполняются одним файлом запуска generate_articles.bat.


1. Что нужно скачать

Есть два варианта:

Вариант 1. Самый простой (рекомендуется)

Скачать весь репозиторий одним архивом:

  1. Нажмите кнопку Code → Download ZIP (в правом верхнем углу на GitHub).
  2. Распакуйте архив на компьютере.

После распаковки используйте только файл запуска:

  • generate_articles.bat — именно его нужно запускать

Файлы client_stream.py и iceberg.csv будут уже лежать рядом в папке.
Менять их вручную не нужно. Если хотите использовать свой файл — замените iceberg.csv на свой CSV.

Остальные файлы в папке не нужны для запуска, их можно не трогать.


Вариант 2. Скачать только нужные файлы

Если не хотите качать всё сразу — скачайте три файла отдельно:

Сохраните их в одну папку.

После запуска generate_articles.bat автоматически создастся файл articles.csv с результатами в этой же папке.


2. Установите Python

  • Если у вас уже установлен Python 3.10+, этот шаг можно пропустить.
  • Если Python не установлен — скачайте и установите его: Python.org → Downloads.
  • При установке на Windows обязательно поставьте галочку Add Python to PATH.

3. Подготовка входного файла

  • Входной CSV должен лежать в той же папке, что и generate_articles.bat.
  • Имя по умолчанию — iceberg.csv (можно выбрать другой при запуске).
  • Формат: одна строка = одна группа (ключ:частота; ключ:частота; …)
group
ремонт холодильника не морозит:120; как заменить термостат в холодильнике:45; код ошибки холодильника а3:12
стиральная машина не сливает воду:200; насос не качает:90; ошибка e21:30
посудомойка плохо моет:150; фильтр засорен:60; налёт на посуде:25
  • файл должен быть сохранён в кодировке UTF-8
  • ключевые слова разделены точкой с запятой ;
  • после двоеточия : указывается частотность (число)

4. Как работает файл запуска

Запустите generate_articles.bat двойным щелчком или через консоль.
Далее файл запуска пошагово запросит параметры и запустит генерацию.

Пошаговый процесс:

  1. Проверка Python

    • Если Python найден, продолжаем.
    • Если не найден, появится сообщение об ошибке и выполнение остановится.
  2. Создание окружения

    • Если ещё нет .venv, файл запуска его создаст.
    • Будут установлены и обновлены зависимости (pip, requests).
  3. Выбор CSV-файла

    • Если в папке есть iceberg.csv, появится сообщение:
      Найден файл iceberg.csv, он будет использован по умолчанию.
      Введите путь к другому CSV или нажмите Enter для значения по умолчанию:
      
      Нажмите Enter, чтобы взять iceberg.csv, или укажите свой файл (например, semantica.csv).
    • Если файла нет, появится запрос:
      Укажите путь к CSV:
      
  4. Укажите диапазон групп

    • Вопрос:

      С какой группы начать (0):
      

      Нажмите Enter для 0, или введите число (например, 10).

    • Следом:

      До какой группы (не включительно). Оставьте пустым, чтобы до конца:
      

      Нажмите Enter, чтобы обработать до конца, или введите число (например, 20).

  5. Запуск генерации

    • Файл запуска сформирует команду и запустит client_stream.py с вашими параметрами.
    • В консоли будут выводиться логи в реальном времени.

5. Что показывает консоль

При запуске вы увидите подготовительные шаги:

== Создаю venv...
== Проверяю зависимости...
Найден файл iceberg.csv, он будет использован по умолчанию.
Введите путь к другому CSV или нажмите Enter для значения по умолчанию:
С какой группы начать (0):0
До какой группы (не включительно). Оставьте пустым, чтобы до конца:1
== Запуск client_stream.py ...

Затем начнётся обработка и появятся логи:

processing started
INFO:     UPLOAD start: iceberg.csv, groups_start=0, groups_end=1, save_html=False, keep=True
2025-09-06 00:30:59 INFO:     Загружено групп: 2
2025-09-06 00:30:59 INFO:     Будет обработано групп: 1 (с 1 по 1)
2025-09-06 00:30:59 INFO:     Старт обработки...
2025-09-06 00:30:59 INFO:     Обрабатывается группа 1 из 1
2025-09-06 00:33:44 INFO:     Сохранено в CSV: как-выбрать-камеру-для-видеонаблюдения
2025-09-06 00:33:44 INFO:     Токены ТЗ (in/out): 2413/2574 | Статья (in/out): 3182/6778 | Стоимость: $0.1571 (сумма: $0.1571)

В самом конце появятся строки об успешном завершении:

2025-09-06 00:33:44 INFO:     Готово → файл /app/data/articles.csv
2025-09-06 00:33:44 INFO:     ИТОГОВАЯ сумма: $0.1571
done
Сохранено: articles.csv

Несмотря на то, что в логах указан путь вида /app/data/articles.csv, на вашем компьютере файл всегда сохраняется в ту же папку, где находится generate_articles.bat.

Таким образом:

  • сначала показываются служебные шаги (создание окружения, проверка зависимостей);
  • затем идут логи обработки (группы, прогресс, стоимость);
  • в конце всегда есть финальное сообщение Сохранено: articles.csv.

6. Результат

  • Итоговый файл articles.csv появится в той же папке, где находится файл запуска.
  • В нём будут колонки:
    • title — заголовок статьи
    • slug — URL‑слаг
    • html — полный HTML‑текст
    • tz — техническое задание для статьи (структура и план)

7. Полезные советы

  • Обработка одной статьи занимает 2–3 минуты.
    Если статей много (например, 100+), лучше запускать партиями, например, 0–10, потом 10–20.
  • Во время работы не прерывайте выполнение: если запрос уже отправлен, деньги всё равно будут списаны.
  • Если articles.csv открыт в Excel — закройте его перед повторным запуском, чтобы файл смог перезаписаться.
  • После завершения обработки файл articles.csv сохраняется в папку с программой.
    При следующем запуске он будет перезаписан новыми статьями, а старые данные исчезнут.
    Чтобы сохранить результаты, скопируйте или переместите файл в другое место перед новым запуском.

8. Краткая памятка

  1. Установи Python
  2. Скачай репозиторий целиком (ZIP) и распакуй — тогда запускать нужно только generate_articles.bat.
    Или скачай три файла (client_stream.py, iceberg.csv, generate_articles.bat) и положи их в одну папку.
  3. Запусти файл запуска generate_articles.bat
  4. Ответь на вопросы (CSV + диапазон)
  5. Дождись логов → получи articles.csv

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors