Repolode
laiso

laiso/site2pdf

CLI-инструмент обходит сайт и объединяет все его страницы в один PDF для RAG- и QA-пайплайнов.

Звёзды
321
Форки
34
Открытые issues
7
Последний коммит
3 месяца назад

Что это?

site2pdf начинает работу с основного URL, собирает ссылки на этой странице, соответствующие необязательному regex или строковому шаблону (по умолчанию — ссылки в пределах того же домена), открывает каждую страницу в headless Chrome и сохраняет её в PDF, а затем объединяет результаты в один документ с помощью pdf-lib. Файл сохраняется в каталоге ./out/ под именем, соответствующим домену сайта.

Основной сценарий использования — подготовка содержимого сайта для AI-инструментов, которые принимают загруженные файлы, например Google NotebookLM или custom GPTs в ChatGPT. Поскольку страницы обрабатываются в браузере, изображения и форматирование сохраняются, что полезно для мультимодальных моделей. Страницы обрабатываются параллельно, чтобы ускорить создание файла.

Для работы инструмента требуется Node.js версии 22.12 или новее и Puppeteer, а значит, нужен бинарный файл Chrome или Chromium. Его путь можно указать через флаг --executablePath или переменную CHROME_PATH.

Ключевые возможности

  • 01Обходит ссылки в пределах того же домена, начиная с указанного URL; поддерживает фильтрацию по regex или строковому шаблону.
  • 02Открывает каждую страницу в headless Chrome и сохраняет её в PDF, сохраняя изображения и форматирование.
  • 03Объединяет все страницы в один PDF с помощью pdf-lib.
  • 04Обрабатывает страницы параллельно, чтобы ускорить создание файла.
  • 05Позволяет указать путь к Chrome через флаг или переменную окружения.

Сценарии использования

  • Преобразование сайтов с документацией по продукту или API в один файл для NotebookLM или custom GPT.
  • Создание единой офлайн-копии раздела документации для архивации.
  • Передача содержимого сайта в качестве источника документов для RAG-пайплайна.

Быстрый старт

  1. 1

    Запустите инструмент напрямую с помощью npx (требуется Node.js версии 22.12 или новее)

    npx site2pdf-cli https://example.com
  2. 2

    Найти созданный PDF можно в папке out

Что важно знать

  • Требуется Node.js версии 22.12 или новее, а в Linux — дополнительные системные библиотеки для Puppeteer.
  • В некоторых системах, например ARM64 Linux, Chrome может не запуститься; в таком случае потребуется вручную установить браузер.

В подборках

Темы

Частые вопросы

Что такое site2pdf?
CLI-инструмент обходит сайт и объединяет все его страницы в один PDF для RAG- и QA-пайплайнов. site2pdf начинает работу с основного URL, собирает ссылки на этой странице, соответствующие необязательному regex или строковому шаблону (по умолчанию — ссылки в пределах того же домена), открывает каждую страницу в headless Chrome и сохраняет её в PDF, а затем объединяет результаты в один документ с помощью pdf-lib. Файл сохраняется в каталоге ./out/ под именем, соответствующим домену сайта.
site2pdf можно использовать бесплатно? Какая у него лицензия?
site2pdf распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
site2pdf всё ещё поддерживается?
Обновлялся за последние 6 месяцев. Последний коммит в site2pdf — 21 авг. 2026 г..
Для чего можно использовать site2pdf?
Преобразование сайтов с документацией по продукту или API в один файл для NotebookLM или custom GPT. Создание единой офлайн-копии раздела документации для архивации. Передача содержимого сайта в качестве источника документов для RAG-пайплайна.
Как установить site2pdf?
Запустите инструмент напрямую с помощью npx (требуется Node.js версии 22.12 или новее): npx site2pdf-cli https://example.com Найти созданный PDF можно в папке out
Где скачать site2pdf?
Исходный код и инструкции по установке — на GitHub: https://github.com/laiso/site2pdf

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

Преобразует сайты с документацией, репозитории GitHub, PDF и другие источники в структурированные базы знаний для skills Claude, Gemini и OpenAI, RAG-пайплайнов и AI-помощников для программирования.

15,3 тыс.+31 за неделю1,6 тыс.PythonMITАктивно поддерживаетсяОбновлён в прошлом месяце

Самостоятельно размещаемый инструмент, который отслеживает европейские порталы недвижимости, например ImmoScout24 и Kleinanzeigen, и отправляет новые объявления в Slack, Telegram, на почту, в Discord или ntfy.

1,6 тыс.+21 за неделю261JavaScriptApache-2.0Активно поддерживаетсяОбновлён 15 часов назад

Открытый Python-веб-краулер, который преобразует сайты в чистый Markdown для LLM, извлекает структурированные данные с помощью CSS/LLM и при необходимости предоставляет API.

87 тыс.+401 за неделю9,1 тыс.PythonApache-2.0Активно поддерживаетсяОбновлён 3 дня назад