linkchecker - онлайн у хмарі

Це командна перевірка посилань, яку можна запустити в постачальнику безкоштовного хостингу OnWorks за допомогою однієї з наших численних безкоштовних робочих станцій, таких як Ubuntu Online, Fedora Online, онлайн-емулятор Windows або онлайн-емулятор MAC OS

ПРОГРАМА:

ІМ'Я


linkchecker - клієнт командного рядка для перевірки HTML-документів і веб-сайтів на наявність пошкоджених посилань

СИНТАКСИС


перевірка посилань [опції] [file-or-url]...

ОПИС


Функції LinkChecker

· рекурсивна та багатопотокова перевірка,

· вивести кольоровий або звичайний текст, HTML, SQL, CSV, XML або графік карти сайту
різні формати,

· підтримка HTTP/1.1, HTTPS, FTP, mailto:, news:, nntp:, Telnet і локальний файл
посилання,

· обмеження перевірки посилань за допомогою фільтрів URL,

· підтримка проксі,

· авторизація імені користувача/паролю для HTTP, FTP і Telnet,

· підтримка протоколу виключення robots.txt,

· підтримка файлів cookie

· підтримка HTML5

· Перевірка синтаксису HTML і CSS

· Антивірусна перевірка

· командний рядок, графічний інтерфейс та веб-інтерфейс

ПРИКЛАДИ


Найбільш поширене використання рекурсивно перевіряє даний домен:
перевірка посилань http://www.example.com/
Майте на увазі, що це перевіряє весь сайт, який може містити тисячі URL-адрес. Використовувати -r
можливість обмеження глибини рекурсії.
Не перевіряйте URL-адреси за допомогою /секрет в його назву. Усі інші посилання перевіряються як зазвичай:
перевірка посилань --ignore-url=/секрет mysite.example.com
Перевірка локального HTML-файлу в Unix:
перевірка посилань ../bla.html
Перевірка локального файлу HTML у Windows:
перевірка посилань c:\temp\test.html
Ви можете пропустити http:// url, якщо домен починається з WWW.:
перевірка посилань www.example.com
Ви можете пропустити FTP: // url, якщо домен починається з ftp.:
перевірка посилань -р0 ftp.example.com
Згенеруйте графік карти сайту та конвертуйте його за допомогою утиліти graphviz dot:
перевірка посилань -одот -v www.example.com | точка -Тпс > sitemap.ps

ВАРІАНТИ


Загальне опції
-fФІЛЕНАМ, --config=ФІЛЕНАМ
Скористайтеся кнопкою ФІЛЕНАМ як файл конфігурації. За замовчуванням LinkChecker використовує
~/.linkchecker/linkcheckerrc.

-h, --допомога
Допоможи мені! Роздрукуйте інформацію про використання цієї програми.

--stdin
Прочитайте список URL-адрес, розділених пробілами, щоб перевірити їх із stdin.

-tНОМЕР, --threads=НОМЕР
Згенеруйте не більше заданої кількості потоків. Кількість потоків за замовчуванням
100. Щоб вимкнути потоки, вкажіть непозитивне число.

-V, -- версія
Роздрукувати версію та вийти.

--list-плагіни
Роздрукуйте наявні плагіни перевірки та вийдіть.

Вихід опції
-DSTRING, --debug=STRING
Роздрукувати вихідні дані налагодження для даного реєстратора. Доступні реєстратори є cmdline,
контроль, cache, графічний інтерфейс користувача, DNS та всі. Уточнення всі є псевдонімом для вказівки всіх
доступні реєстратори. Опцію можна надати кілька разів для налагодження з більш ніж
один лісоруб. Для отримання точних результатів потокове об’єднання буде вимкнено під час виконання налагодження.

-FTYPE[/КОДУВАННЯ][/ФІЛЕНАМ], --file-output=TYPE[/КОДУВАННЯ][/ФІЛЕНАМ]
Виведення у файл перевірка посилань.TYPE, $HOME/.linkchecker/чорний список та цінності чорний список
вихід, або ФІЛЕНАМ якщо зазначено. The КОДУВАННЯ визначає вихідне кодування,
за замовчуванням – це ваша мова. Дійсні кодування перелічено за адресою
http://docs.python.org/library/codecs.html#стандартні кодування.
Команда ФІЛЕНАМ та КОДУВАННЯ частин ніхто тип виводу буде ігноруватися, інакше якщо
файл уже існує, він буде перезаписаний. Ви можете вказати цей параметр більше
ніж один раз. Допустимі типи виведення файлів текст, HTML, SQL, CSV, gml, точка, XML,
Карта сайту, ніхто or чорний список. За замовчуванням не виводиться файл. Різні типи виходу
задокументовані нижче. Зауважте, що ви можете придушити весь вихід консолі за допомогою цієї опції
-o ніхто.

--без статусу
Не друкуйте повідомлення про статус перевірки.

--без попереджень
Не реєструйте попередження. За замовчуванням реєструються попередження.

-oTYPE[/КОДУВАННЯ], --вихід=TYPE[/КОДУВАННЯ]
Вкажіть тип виводу як текст, HTML, SQL, CSV, gml, точка, XML, Карта сайту, ніхто or
чорний список. Тип за замовчуванням текст. Різні типи виводу описані нижче.
Команда КОДУВАННЯ вказує вихідне кодування, за замовчуванням є кодування вашого мовного стандарту.
Дійсні кодування перелічено за адресою http://docs.python.org/library/codecs.html#стандарт-
кодування.

-q, --спокійно
Безшумна робота, псевдонім для -o ніхто. Це корисно лише з -F.

-v, -багатослівний
Зареєструйте всі перевірені URL-адреси. За замовчуванням реєструються лише помилки та попередження.

-WREGEX, --warning-regex=REGEX
Визначте регулярний вираз, який друкує попередження, якщо воно відповідає будь-якому вмісту
перевірене посилання. Це стосується лише дійсних сторінок, тому ми можемо отримати їх вміст.
Використовуйте це, щоб перевірити сторінки, які містять певну помилку, наприклад «Ця сторінка
переміщено" або "Помилка програми Oracle".
Зауважте, що, наприклад, у регулярному виразі можна об’єднати декілька значень
"(Цю сторінку переміщено|Помилка програми Oracle)".
Див. Розділ РЕГУЛЯРНА ВИРАЗИ Додаткова інформація.

Перевірка опції
--cookiefile=ФІЛЕНАМ
Прочитайте файл із початковими даними cookie. Формат даних cookie пояснюється нижче.

--check-extern
Перевірте зовнішні URL-адреси.

--ignore-url=REGEX
URL-адреси, що відповідають заданому регулярному виразу, ігноруватимуться та не перевірятимуться.
Цю опцію можна вказати кілька разів.
Див. Розділ РЕГУЛЯРНА ВИРАЗИ Додаткова інформація.

-NSTRING, --nntp-сервер=STRING
Вкажіть сервер NNTP для новини: посилання. За замовчуванням є змінна середовища
NNTP_SERVER. Якщо хост не вказано, перевіряється лише синтаксис посилання.

--no-follow-url=REGEX
Перевірте, але не повторюйте URL-адреси, що відповідають заданому регулярному виразу.
Цю опцію можна вказати кілька разів.
Див. Розділ РЕГУЛЯРНА ВИРАЗИ Додаткова інформація.

-p, --пароль
Прочитайте пароль з консолі та використовуйте його для авторизації HTTP та FTP. Для FTP
пароль за замовчуванням анонімний@. Для HTTP немає пароля за замовчуванням. Дивись також
-u.

-rНОМЕР, --recursion-level=НОМЕР
Рекурсивно перевіряйте всі посилання до заданої глибини. Від’ємна глибина дозволить
нескінченна рекурсія. Глибина за замовчуванням нескінченна.

--тайм-аут=НОМЕР
Встановіть час очікування для спроб підключення в секундах. Тайм-аут за замовчуванням становить 60
секунд.

-uSTRING, --user=STRING
Спробуйте ввести ім’я користувача для авторизації HTTP та FTP. Для FTP за замовчуванням
ім'я користувача є анонімний. Для HTTP немає імені користувача за замовчуванням. Дивись також -p.

--user-agent=STRING
Вкажіть рядок User-Agent, який потрібно надіслати, наприклад, на сервер HTTP
"Mozilla/4.0". За замовчуванням — «LinkChecker/XY», де XY — поточна версія
LinkChecker.

КОНФІГУРАЦІЯ ФАЙЛИ


У файлах конфігурації можна вказати всі параметри вище. Вони також можуть вказати деякі параметри, які
не можна встановити в командному рядку. Побачити linkcheckerrc(5) для отримання додаткової інформації.

ВИХІД ВИДИ


Зауважте, що за замовчуванням реєструються лише помилки та попередження. Ви повинні використовувати -багатослівний
можливість отримати повний список URL-адрес, особливо при виведенні формату графіка карти сайту.

текст Стандартний текстовий реєстратор, реєструючи URL-адреси за ключовим словом: аргумент мода.

HTML URL-адреси журналу за ключовим словом: аргумент мода, відформатований як HTML. Додатково є посилання
на посилання на сторінки. Недійсні URL-адреси містять посилання для перевірки синтаксису HTML і CSS
додається.

CSV Результат перевірки журналу у форматі CSV з однією URL-адресою на рядок.

gml Реєструйте батьківські та дочірні зв’язки між пов’язаними URL-адресами як графік карти сайту GML.

точка Реєструйте батьківські та дочірні зв’язки між пов’язаними URL-адресами як графік карти сайту.

gxml Результат перевірки журналу у вигляді графіка карти сайту GraphXML.

XML Результат перевірки журналу як машиночитаний XML.

Карта сайту
Результат перевірки журналу у вигляді XML-карти сайту, протокол якого задокументовано за адресою
http://www.sitemaps.org/protocol.html.

SQL Результат перевірки журналу у вигляді сценарію SQL з командами INSERT. Приклад сценарію для створення
початкова таблиця SQL включена як create.sql.

чорний список
Підходить для роботи cron. Записує результат перевірки у файл ~/.linkchecker/чорний список
який містить лише записи з недійсними URL-адресами та кількість разів, які вони мали
не вдалося.

ніхто Нічого не реєструє. Підходить для налагодження або перевірки коду виходу.

РЕГУЛЯРНА ВИРАЗИ


LinkChecker приймає регулярні вирази Python. Побачити http://docs.python.org/
howto/regex.html для вступу.

Крім того, провідний знак оклику заперечує регулярний вираз.

COOKIE ФАЙЛИ


Файл cookie містить стандартні дані заголовка HTTP (RFC 2616) із наступними можливими
імена:

Господар (обов’язково)
Встановлює домен, для якого дійсні файли cookie.

Шлях (За бажанням)
Вказує шлях, для якого потрібні файли cookie; шлях за замовчуванням /.

Набір-печиво (обов’язково)
Встановити ім’я/значення файлу cookie. Можна давати більше одного разу.

Кілька записів розділяються порожнім рядком. Наведений нижче приклад надсилає два файли cookie
на всі URL-адреси, починаючи з http://example.com/hello/ і один до всіх URL-адрес, починаючи з
https://example.org/:

Хост: example.com
Шлях: /привіт
Set-cookie: ID="smee"
Set-cookie: spam="egg"

Хост: example.org
Set-cookie: baggage="elitist"; коментар = "голограма"

PROXY ПІДТРИМКА


Щоб використовувати проксі в Unix або Windows, встановіть $http_proxy, $https_proxy або $ftp_proxy
змінні середовища до URL-адреси проксі. URL-адреса має бути такого вигляду
http://[користувач:проходити@]господар[:порт]. LinkChecker також виявляє ручні налаштування проксі-сервера
Internet Explorer в системах Windows і gconf або KDE в системах Linux. На комп’ютері Mac
Internet Config, щоб вибрати проксі-сервер. Ви також можете встановити список доменів, розділених комами
змінні середовища $no_proxy, щоб ігнорувати будь-які налаштування проксі для цих доменів.
Наприклад, налаштування HTTP-проксі в Unix виглядає так:

експорт http_proxy="http://proxy.example.com:8080"

Аутентифікація проксі також підтримується:

експорт http_proxy="http://user1:mypass@proxy.example.org:8081"

Налаштування проксі-сервера в командному рядку Windows:

встановити http_proxy=http://proxy.example.com: 8080

ВИКОНАЄТЬСЯ ПРОВЕРКИ


Усі URL-адреси мають пройти попередню синтаксичну перевірку. Незначні помилки цитування видадуть a
попередження, усі інші недійсні синтаксичні проблеми є помилками. Після того, як перевірка синтаксису пройде, файл
URL-адреса стоїть у черзі для перевірки з’єднання. Нижче описано всі типи перевірки підключення.

HTTP посилання (HTTP:, HTTPS:)
Після підключення до даного HTTP-сервера запитується заданий шлях або запит. всі
переспрямування виконуються, і якщо користувач/пароль вказано, він буде використовуватися як
авторизація, коли це необхідно. Усі остаточні коди статусу HTTP, крім 2xx, є
помилки. Вміст сторінки HTML перевіряється на рекурсію.

Локальні файли (Файл:)
Звичайний, читабельний файл, який можна відкрити, є дійсним. Також доступний для читання каталог
дійсний. Усі інші файли, наприклад файли пристрою, нечитані або неіснуючі файли
є помилками. HTML або інший вміст файлу для аналізу перевіряється на рекурсію.

Посилання на пошту (MAILTO:)
Посилання mailto: зрештою перетворюється на список адрес електронної пошти. Якщо одна адреса
не вдасться, весь список вийде з ладу. Для кожної електронної адреси ми перевіряємо наступне
речі:
1) Перевірте синтаксис адреси, як частини до, так і після
знак.
2) Знайдіть записи MX DNS. Якщо ми не знайшли запису MX,
надрукувати помилку.
3) Перевірте, чи приймає один із поштових хостів підключення SMTP.
Спочатку перевірте хости з вищим пріоритетом.
Якщо жоден хост не приймає SMTP, ми друкуємо попередження.
4) Спробуйте перевірити адресу за допомогою команди VRFY. Якщо ми отримали
відповідь, роздрукуйте підтверджену адресу як інформацію.

FTP-посилання (ftp:)

Для FTP-посилань ми робимо:

1) підключитися до вказаного хосту
2) спробуйте увійти, використовуючи дані користувача та пароль. За замовчуванням
користувач ``анонімний``, пароль за замовчуванням ``anonymous@``.
3) спробуйте перейти до вказаного каталогу
4) список файлів за допомогою команди NLST

Посилання Telnet (``telnet:``)

Ми намагаємося підключитися, і якщо користувач/пароль вказано, увійдіть до
даний сервер telnet.

Посилання NNTP (``news:``, ``news:``, ``nntp``

Ми намагаємося підключитися до даного сервера NNTP. Якщо група новин або
вказана стаття, спробуйте запитати її на сервері.

Непідтримувані посилання (``javascript:`` тощо)

Непідтримуване посилання надрукує лише попередження. Більше ніяких перевірок
буде зроблено.

Повний список розпізнаних, але непідтримуваних посилань можна знайти
, linkcheck/checker/unknownurl.py вихідний файл.
Найпомітнішими з них мають бути посилання на JavaScript.

плагіни


Існує два типи плагінів: підключення та плагіни вмісту. Запускаються плагіни підключення
після успішного підключення до хосту URL. Плагіни вмісту запускаються, якщо тип URL-адреси
має вміст (наприклад, mailto: URL-адреси не мають вмісту) і якщо перевірка не заборонена
(тобто HTTP robots.txt). Побачити перевірка посилань --list-плагіни для списку плагінів та їх
документація. Усі плагіни вмикаються через linkcheckerrc(5) файл конфігурації.

РЕКУРСІЯ


Перш ніж рекурсивно спускатися до URL-адреси, вона повинна виконати кілька умов. Вони є
перевірено в такому порядку:

1. URL-адреса має бути дійсною.

2. URL-адресу потрібно аналізувати. Наразі це включає файли HTML,
Opera закладки файлів і каталогів. Якщо тип файлу неможливий
бути визначеним (наприклад, він не має загального файлу HTML
розширення, а вміст не схожий на HTML), передбачається
бути нерозбірними.

3. Вміст URL-адреси має бути доступним. Зазвичай так буває
за винятком, наприклад, mailto: або невідомих типів URL-адрес.

4. Максимальний рівень рекурсії не повинен бути перевищений. Він налаштований
з -- рівень рекурсії і необмежений за замовчуванням.

5. Він не повинен відповідати списку ігнорованих URL-адрес. Це контролюється за допомогою
--ignore-url варіант.

6. Протокол виключення роботів повинен дозволяти посилання в URL-адресі
слідували рекурсивно. Це перевіряється пошуком a
Директива "nofollow" у даних заголовка HTML.

Зауважте, що рекурсія каталогу читає всі файли в цьому каталозі, а не лише підмножину
як index.htm*.

ПРИМІТКИ


URL-адреси в командному рядку, починаючи з ftp. трактуються як ftp://ftp., URL-адреси, які починаються з
WWW. трактуються як http://www.. Ви також можете надати локальні файли як аргументи.

Якщо ваша система налаштована на автоматичне встановлення з’єднання з Інтернетом
(наприклад, за допомогою diald), він підключатиметься під час перевірки посилань, які не вказують на ваш локальний хост.
Використовувати --ignore-url можливість запобігти цьому.

Посилання Javascript не підтримуються.

Якщо ваша платформа не підтримує потоки, LinkChecker автоматично вимикає її.

Ви можете вказати кілька пар користувач/пароль у файлі конфігурації.

При перевірці новини: посилань даний хост NNTP не повинен бути таким самим, як хост
користувач, який переглядає ваші сторінки.

НАВКОЛИШНЄ СЕРЕДОВИЩЕ


NNTP_SERVER - визначає сервер NNTP за замовчуванням
http_proxy - визначає проксі-сервер HTTP за замовчуванням
ftp_proxy - визначає проксі-сервер FTP за замовчуванням
no_proxy - розділений комами список доменів, до яких не можна звертатися через проксі-сервер
LC_MESSAGES, МОВА, МОВА - вказати мову виведення

ПОВЕРНЕННЯ VALUE


Повертається значення 2, коли

· сталася помилка програми.

Повертається значення 1, коли

· знайдено недійсні посилання або

· знайдено попередження про посилання, і попередження ввімкнено

В іншому випадку повертається значення дорівнює нулю.

ОБМЕЖЕННЯ


LinkChecker споживає пам'ять для кожної URL-адреси в черзі для перевірки. З тисячами URL-адрес у черзі
обсяг споживаної пам'яті може стати досить великим. Це може сповільнити програму або
навіть вся система.

Використовуйте онлайн-перевірку посилань за допомогою служб onworks.net



Найновіші онлайн-програми для Linux і Windows