Website-downloader README

The project's README from github.com/AhmadIbrahiim/Website-downloader. As one markdown file: README.md.

Complete Website Downloader 💾

Download the complete source code of any website (including all assets) 🔨.

👉 Live Demo: https://website-downloader.onrender.com

enter image description here

CodeFactor

Description 📒

Website downloader works with wget and archiver to download all websites assets and compress then sends it back to the user through socket channel

wget params the being used

wget --mirror --convert-links --adjust-extension --page-requisites --no-parent http://example.org

Explanation of the various flags:

Deploy on cloud providers

Run on Replit Remix on Glitch Deploy on Railway Deploy to Cyclic Deploy to Koyeb Deploy to Render

Requirements 📦

How to run it 🤔

Optional settings

Variable Default What it does
PORT 3000 Port the server listens on
DOWNLOAD_QUOTA 100m Size ceiling passed to wget, so one request cannot fill the disk
DOWNLOAD_TIMEOUT_MS 300000 How long a single download may run before it is stopped

How To Contribute:

Liked it ? You can buy a coffee:

Buy Me A Coffee

Thank you,

Email: [email protected]

https://www.ahmed-ibrahim.com

Website-downloader (AhmadIbrahiim/Website-downloader)

Searching Database…

Что это?Self-hosted приложение на Node.js, которое скачивает полный исходный код любого сайта, включая его JavaScript, стили и картинки, чтобы у вас осталась офлайн-копия.
Это инструмент командной строки или веб-приложение?Это небольшое веб-приложение: вы открываете интерфейс, отправляете URL, сервер зеркалирует сайт через wget и по socket-соединению передаёт заархивированный результат обратно в ваш браузер.
Как его запустить?Склонируйте репозиторий, выполните npm install, затем npm start; сервер по умолчанию слушает порт 3000.
Нужно ли что-то кроме Node.js?Да, нужны установленные и доступные в PATH Node.js 16+ и wget, поскольку приложение вызывает wget для самого скачивания.
Есть ли лимит на объём скачивания?Да, по умолчанию один запрос ограничен квотой 100 МБ и таймаутом 5 минут (300000 мс); и то, и другое можно изменить переменными окружения.
Он работает на Windows и macOS или только на Linux?Работает на всех трёх, ведь нужен лишь установленный wget: apt install wget на Debian/Ubuntu, brew install wget на macOS или winget install JernejSimoncic.Wget на Windows.
С какими флагами wget он реально запускается?Он запускает wget --mirror --convert-links --adjust-extension --page-requisites --no-parent: это рекурсивно скачивает сайт, переписывает ссылки для офлайн-просмотра, добавляет правильные расширения файлов, подтягивает ресурсы страниц и не даёт уходить в родительские каталоги.
Как он упаковывает скачанный сайт перед отправкой?После того как wget зеркалирует сайт на диск, приложение сжимает файлы в архив библиотекой archiver и отправляет его обратно по socket-соединению.
Можно ли развернуть это где-то, а не запускать локально?В README есть раздел «Deploy on cloud providers», намекающий на варианты развёртывания в один клик, хотя конкретные провайдеры и шаги там не перечислены.
Size
4.2 MB
Stars
6K
Updated
CommitAug 12
Age
6y
Commits · 90 Days