Як встановити WGET на віндовс
Wget - Програма Вільна не інтерактивна консольна програма для завантаження файлів через мережу. Підтримує протоколи HTTP, FTP та HTTPS, а також підтримує роботу через HTTP проксі-сервер. Програма включена майже до всіх дистрибутивів GNU/Linux.
Далі створюємо папку називаємо wget (приклад: c:\Program Files\wget), завантажений архів розпаковуємо в нашу щойно створену папку.
Тепер, комбінацією клавіш WIN + PAUSE BREAK відкриваємо панель керування, або лікаєм правою кнопкою на кнопці Пуск - Система.
Тепер потрібно прописати шлях до файлу, приклад нижче:
Тепер йдемо в папку віндовз -> system32 і закидаємо сам файл wget, з архіву.
Тепер перевіримо на працездатність, запускаємо командний рядок, тиснемо WIN + R, або ПУСК-виконати, і в дане поле пишемо CMD, пишемо нашу команду WGET, далі тиснемо ENTER
Якщо після цього все що нижче як у мене, то все працює) На цьому все!
ДОречі усі команди програми можна отримати ввівши:
wget --help
Приклад команди для завантаження сайту:
wget --no-check-certificate --mirror --convert-links --page-requisites --no-parent -P ./documents/websites/ -U "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36" --html-extension --wait=10 --limit-rate=50k --tries=inf https://restv-dir.com.ua/
wget --mirror --convert-links --page-requisites --no-parent -P documents/websites/ https://some-website.com
Давайте розберемо приклад докладніше:
–mirror Цей ключ робить ваше скачування рекурсивним.
–convert-links Усі посилання будуть перетворені на офлайн використання.
–page-requisites Цим ми включимо для скачування всі необхідні файли, такі як CSS, JS та картинки.
–no-parent Це гарантує, що каталоги з ієрархії вище не будуть завантажені.
-P documents/websites/ Ця опція гарантує, що весь контент буде направлений у вказаний каталог.
----------------------------------
Як використовувати Wget для пошуку битих посилань
wget -o wget-log -r -l 5 --spider http://example.com
-o Збирає виведення у файл для використання пізніше.
-l Задає рівень рекурсії.
-r Робить завантаження рекурсивним.
–spider Встановлює команду в режим роботи павука.
Тепер ми можемо вивчити файл wget-log для пошуку списку битих посилань. Ось команда для цього:
grep -B 2 '404' wget-log | grep "http" | cut -d " " -f 4 | sort -u
----------------
пропускати певний тип файлів:
$ wget --reject=png Website_url
----------------------
wget --mirror --page-requisites --convert-links --adjust-extension --compression=auto --reject-regex "/search|/rss" --no-if-modified-since --no-check-certificate --user-agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36" https://yoursite.com
----------------------------
wget --input-file=links.txt --page-requisites --convert-links --adjust-extension --compression=auto --no-if-modified-since --no-check-certificate --user-agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36"
Переклад команд WGET на українську:
-V, --version -- показати версію Wget і вийти
-h, --help -- надрукувати цю довідку
-b, --background -- перейти у фоновий режим після запуску
-e, --execute=КОМАНДА -- виконати команду у стилі `.wgetrc'
Логування та вхідний файл:
-o, --output-file=ФАЙЛ -- журнал повідомлень у ФАЙЛ
-a, --append-output=ФАЙЛ -- додавати повідомлення до ФАЙЛУ
-d, --debug -- вивести багато інформації про налагодження
-q, --quiet -- тихо (без виведення)
-v, --verbose -- бути докладним (за замовчуванням)
-nv, --no-verbose -- вимкнути багатослівність, не замовчуючи
--report-speed=TYPE -- вихідна пропускна здатність як TYPE. TYPE може бути бітами
-i, --input-file=ФАЙЛ -- завантажувати URL-адреси, знайдені в локальному або зовнішньому ФАЙЛІ
--input-metalink=ФАЙЛ -- завантажити файли, описані в локальному файлі Metalink
-F, --force-html -- розглядати вхідний файл як HTML
-B, --base=URL -- розпізнає посилання на вхідні файли HTML (-i -F)
-- відносно URL
--config=ФАЙЛ -- вказати файл конфігурації для використання
--no-config -- не читати файл конфігурації
--rejected-log=ФАЙЛ -- журнал причин відхилення URL-адреси до ФАЙЛУ
--
Завантажити:
-t, --tries=КІЛЬКІСТЬ -- встановити кількість повторних спроб до КІЛЬКІСТЬ (0 без обмежень)
--retry-connrefused -- повторити спробу, навіть якщо підключення відмовлено
-O, --output-document=ФАЙЛ -- запис документів у ФАЙЛ
-nc, --no-clobber -- пропускати завантаження, які будуть завантажені
-- існуючі файли (перезаписуючи їх)
--no-netrc -- не намагайтеся отримати облікові дані з .netrc
-c, --continue -- відновити отримання частково завантаженого файлу
--start-pos=OFFSET -- почати завантаження з нульової позиції OFFSET
--progress=TYPE -- вибрати тип індикатора прогресу
--show-progress -- відобразити панель прогресу в будь-якому режимі багатослівності
-N, --timestamping -- не відновлювати файли, якщо вони не новіші за
-- місцевий
--no-if-modified-since -- не використовувати умовний if-modified-since get
-- запити в режимі мітки часу
--no-use-server-timestamps -- не встановлювати мітку часу для локального файлу той, що на сервері
-S, --server-response -- відповідь сервера друку
--spider -- нічого не завантажувати
-T, --timeout=СЕКУНД -- встановити для всіх значень часу очікування значення СЕКУНД
--dns-servers=АДРЕСИ -- список DNS-серверів для запиту (розділені комами)
--bind-dns-address=АДРЕСА -- прив'язати DNS-розпізнавач до АДРЕСИ (ім'я хоста або IP) на локальному хості
--dns-timeout=SECS -- встановити тайм-аут пошуку DNS на SECS
--connect-timeout=SECS -- встановити тайм-аут підключення до SECS
--read-timeout=SECS -- встановити тайм-аут читання на SECS
-w, --wait=СЕКУНДИ -- чекати СЕКУНДИ між отриманням
--waitretry=СЕКУНД -- чекати 1..СЕКУНД між повторними спробами отримання
--random-wait -- очікування від 0,5*WAIT...1,5*WAIT секунд між пошуками
--no-proxy -- явно вимкнути проксі
-Q, --quota=ЧИСЛО -- встановити квоту отримання на ЧИСЛО
--bind-address=АДРЕСА -- прив'язуватися до АДРЕСИ (ім'я хоста або IP) на локальному хості
--limit-rate=RATE -- обмежити швидкість завантаження до RATE
--no-dns-cache -- вимкнути кешування пошуків DNS
--restrict-file-names=OS -- обмежити символи в назвах файлів до тих, які дозволяє ОС
--ignore-case -- ігнорувати регістр під час пошуку файлів/каталогів
-4, --inet4-only -- підключатися лише до адрес IPv4
-6, --inet6-only -- підключатися лише до IPv6-адрес
--prefer-family=СІМ'Я -- спочатку підключитися до адрес вказаної родини,
-- один із IPv6, IPv4 або жодного
--user=КОРИСТУВАЧ -- встановити для користувачів ftp і http значення КОРИСТУВАЧ
--password=PASS -- установити пароль ftp і http на значення PASS
--ask-password -- запит паролів
--use-askpass=КОМАНДА -- вказати обробник облікових даних для запиту
-- ім'я користувача та пароль. Якщо немає КОМАНДИ
-- визначено WGET_ASKPASS або SSH_ASKPASS
-- використовується змінна середовища.
--no-iri -- вимкнути підтримку IRI
--local-encoding=ENC -- використовувати ENC як локальне кодування для IRI
--remote-encoding=ENC -- використовувати ENC як стандартне віддалене кодування
--від'єднати -- повторноперемістити файл, перш ніж знищити
--keep-badhash -- зберігати файли з невідповідністю контрольної суми (додати .badhash)
--metalink-index=NUMBER -- Metalink application/metalink4+xml metaurl порядковий НОМЕР
--metalink-over-http -- використовувати метадані Metalink із заголовків відповідей HTTP
--preferred-location -- бажане розташування для ресурсів Metalink
--
Каталоги:
-nd, --no-directory -- не створювати каталоги
-x, --force-directory -- примусове створення каталогів
-nH, --no-host-directories -- не створювати каталоги хостів
--protocol-directories -- використовувати назву протоколу в каталогах
-P, --directory-prefix=PREFIX -- зберігати файли в PREFIX/..
--cut-dirs=NUMBER -- ігнорувати NUMBER компонентів віддаленого каталогу
--
Опції HTTP:
--http-user=КОРИСТУВАЧ -- встановити для користувача http значення КОРИСТУВАЧ
--http-password=PASS -- встановити пароль http на PASS
--no-cache -- заборонити кешовані сервером дані
--default-page=NAME -- змінити назву сторінки за умовчанням (зазвичай
-- це 'index.html'.)
-E, --adjust-extension -- зберегти документи HTML/CSS із відповідними розширеннями
--ignore-length -- ігнорувати поле заголовка "Content-Length".
--header=STRING -- вставити STRING серед заголовків
--compression=TYPE -- вибрати стиснення, одне з автоматичних, gzip або жодних. (за замовчуванням: немає)
--max-redirect -- максимальна кількість переспрямувань на сторінку
--proxy-user=КОРИСТУВАЧ -- встановити КОРИСТУВАЧА як ім'я користувача проксі
--proxy-password=PASS -- встановити PASS як пароль проксі
--referer=URL -- включити заголовок "Referer: URL" у запит HTTP
--save-headers -- зберегти HTTP-заголовки у файл
-U, --user-agent=AGENT -- ідентифікувати як AGENT замість Wget/VERSION
--no-http-keep-alive -- вимкнути HTTP keep-alive (постійні з'єднання)
--no-cookies -- не використовувати файли cookie
--load-cookies=ФАЙЛ -- завантажити файли cookie з ФАЙЛУ перед сеансом
--save-cookies=ФАЙЛ -- зберегти файли cookie у ФАЙЛ після сеансу
--keep-session-cookies -- завантажити та зберегти сеансові (непостійні) файли cookie
--post-data=STRING -- використовувати метод POST; надіслати STRING як дані
--post-file=ФАЙЛ -- використовувати метод POST; надіслати вміст FILE
--method=HTTPMethod -- використовувати метод "HTTPMethod" у запиті
--body-data=STRING -- надіслати STRING як дані. --method ПОВИНЕН бути встановлений
--body-file=ФАЙЛ -- надіслати вміст ФАЙЛУ. --method ПОВИНЕН бути встановлений
--content-disposition -- врахувати заголовок Content-Disposition, коли
-- вибір локальних імен файлів (ЕКСПЕРИМЕНТАЛЬНИЙ)
--content-on-error -- вивести отриманий вміст на помилки сервера
--auth-no-challenge -- надіслати базову інформацію автентифікації HTTP
-- без попереднього очікування сервера
-- виклик
--
Параметри HTTPS (SSL/TLS):
--secure-protocol=PR -- вибрати захищений протокол, один із автоматичних, SSLv2,
-- SSLv3, TLSv1, TLSv1_1, TLSv1_2 і PFS
--https-online -- переходьте лише за безпечними посиланнями HTTPS
--no-check-certificate -- не перевіряти сертифікат сервера
--certificate=ФАЙЛ -- файл сертифіката клієнта
--certificate-type=TYPE -- тип сертифіката клієнта, PEM або DER
--private-key=ФАЙЛ -- файл закритого ключа
--private-key-type=TYPE -- тип закритого ключа, PEM або DER
--ca-certificate=ФАЙЛ -- файл із набором ЦС
--ca-directory=DIR -- каталог, де зберігається хеш-список CA
--crl-file=ФАЙЛ -- файл із пакетом CRL
--pinnedpubkey=FILE/HASHES -- Файл відкритого ключа (PEM/DER) або будь-який номер
-- хешів sha256 у кодуванні base64, яким передує
-- 'sha256//' і розділені ';', щоб перевірити
-- ровесник проти
--
Опції HSTS:
--no-hsts -- вимкнути HSTS
--hsts-file -- шлях до бази даних HSTS (буде замінено за замовчуванням)
--
Параметри FTP: --
--ftp-user=КОРИСТУВАЧ -- встановити користувача ftp на КОРИСТУВАЧА
--ftp-password=PASS -- встановити пароль ftp на PASS
--no-remove-listing -- не видаляти файли '.listing'
--no-glob -- вимкнути глобалізацію імені файлу FTP
--no-passive-ftp -- вимкнути "пасивний" режим передачі
--preserve-permissions -- зберегти дозволи на віддалені файли
--retr-symlinks -- під час рекурсії отримати посилання на файли (не каталог)
Параметри FTPS:
--ftps-implicit -- використовувати неявний FTPS (порт за замовчуванням 990)
--ftps-resume-ssl -- відновити сеанс SSL/TLS, запущений у контрольному з'єднанні, коли
-- відкриття з'єднання даних
--ftps-clear-data-connection -- шифрувати лише канал керування; усі дані будуть у вигляді відкритого тексту
--ftps-fallback-to-ftp -- повернутися до FTP, якщо FTPS не підтримується цільовим сервером
Опції WARC:
--warc-file=FILENAME -- зберегти дані запиту/відповіді у файлі .warc.gz
--warc-header=STRING -- вставте STRING у запис warcinfo
--warc-max-size=NUMBER -- встановити максимальний розмір файлів WARC на NUMBER
--warc-cdx -- запис файлів індексу CDX
--warc-dedup=ІМ'Я ФАЙЛУ -- не зберігати записи, перелічені у цьому файлі CDX
--no-warc-compression -- не стискати файли WARC за допомогою GZIP
--no-warc-digests -- не обчислювати дайджести SHA1
--no-warc-keep-log -- не зберігати файл журналу в записі WARC
--warc-tempdir=КАТАЛОГ -- розташування для тимчасових файлів, створених
-- Письменник WARC
--
Рекурсивне завантаження:
-r, --recursive -- вказати рекурсивне завантаження
-l, --level=NUMBER -- максимальна глибина рекурсії (inf або 0 для нескінченності)
--delete-after -- видалити файли локально після їх завантаження
-k, --convert-links -- зробити посилання у завантаженому HTML або CSS вказуючим на
-- локальні файли
--convert-file-only -- конвертувати лише файлову частину URL (зазвичай відому як базове ім'я)
--backups=N -- перед записом файлу X ротація до N файлів резервних копій
-K, --backup-converted -- перед перетворенням файлу X зробити резервну копію як X.orig
-m, --mirror -- ярлик для -N -r -l inf --no-remove-listing
-p, --page-requisites -- отримати всі зображення тощо, необхідні для відображення сторінки HTML
--strict-comments -- увімкнути сувору (SGML) обробку коментарів HTML
Рекурсивне прийняття/відхилення:
-A, --accept=СПИСОК -- список дозволених розширень, розділених комами
-R, --reject=СПИСОК -- список відхилених розширень, розділених комами
--accept-regex=REGEX -- регулярний вираз, що відповідає прийнятним URL-адресам
--reject-regex=REGEX -- регулярний вираз, що відповідає відхиленим URL-адресам
--regex-type=TYPE -- тип регулярного виразу (posix|pcre)
-D, --domains=СПИСОК -- список допустимих доменів, розділених комами
--exclude-domains=СПИСОК -- список відхилених доменів, розділених комами
--follow-ftp -- переходити за FTP-посиланнями з документів HTML
--follow-tags=СПИСОК -- список тегів HTML, розділених комами
--ignore-tags=СПИСОК -- список ігнорованих тегів HTML, розділених комами
-H, --span-hosts -- перейти до іноземних хостів у рекурсивному режимі
-L, --relative -- переходити лише за відносними посиланнями
-I, --include-directories=СПИСОК -- список дозволених каталогів
--trust-server-names -- використовувати ім'я, указане перенаправленням
-- останній компонент URL-адреси
-X, --exclude-directories=СПИСОК -- список виключених каталогів
-np, --no-parent -- не переходити до батьківського каталогу