Wget рекурсивный сбой на вики-страницах

Я пытаюсь рекурсивно получить все страницы, ссылки на которые есть на моей вики-странице. Я пробовал много разных рекурсивных опций wget, которые все имеют один и тот же результат: загружается только html-файл с данного URL-адреса, а не все страницы, связанные с этой html-страницей.

Если я использую --convert-links Опция, wget правильно переводит несвязанные ссылки на нужные веб-ссылки. Он просто не рекурсивно загружает эти связанные страницы.

wget --verbose -r https://wiki.gnome.org/Outreachy
--2017-03-02 10:34:03--  https://wiki.gnome.org/Outreachy
Resolving wiki.gnome.org (wiki.gnome.org)... 209.132.180.180, 209.132.180.168
Connecting to wiki.gnome.org (wiki.gnome.org)|209.132.180.180|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [text/html]
Saving to: ‘wiki.gnome.org/Outreachy’

wiki.gnome.org/Outreachy                                      [  <=>                                                                                                                                ]  52.80K   170KB/s    in 0.3s    

2017-03-02 10:34:05 (170 KB/s) - ‘wiki.gnome.org/Outreachy’ saved [54064]

FINISHED --2017-03-02 10:34:05--
Total wall clock time: 1.4s
Downloaded: 1 files, 53K in 0.3s (170 KB/s)

Я не уверен, что это терпит неудачу, потому что html-ссылки в вики не заканчиваются на.html. Я пытался использовать различные комбинации --accept='[a-zA-Z0-9]+', --page-requisites, а также --accept-regex='[a-zA-Z0-9]+' чтобы обойти это, не повезло.

Я не уверен, что это не удается, потому что в вики есть HTML-страницы, такие как https://wiki.gnome.org/Outreachy ссылки на страницы, такие как URL https://wiki.gnome.org/Outreachy/Admin а также https://wiki.gnome.org/Outreachy/Admin/GettingStarted, Может быть, wget сбит с толку, потому что там должна быть HTML-страница и каталог с тем же именем? Я также пытался использовать --nd но не повезло.

Все связанные html-страницы относятся к базовому URL-адресу вики (например, <a href="/Outreachy/History">Outreachy history page</a>). Я пытался также добавить --base="https://wiki.gnome.org/ без удачи

К этому моменту я перепробовал множество различных вариантов wget, прочитал несколько вопросов о переполнении стека и unix.stackexchange.com, и ничего из того, что я пробовал, не сработало. Я надеюсь, что есть эксперт по wget, который сможет просмотреть эту конкретную вики-страницу и понять, почему wget не может рекурсивно получить связанные страницы. Те же параметры отлично работают на других доменах.

Я также пробовал httrack, с тем же результатом. Я использую Linux, поэтому, пожалуйста, не предлагайте Windows или проприетарные инструменты.

1 ответ

Кажется, это вызвано следующим тегом в вики:

<meta name="robots" content="index,nofollow">

Если вы уверены, что хотите игнорировать тег, вы можете сделать так, чтобы wget игнорировал его, используя -e robots=off:

wget -e robots=off --verbose -r https://wiki.gnome.org/Outreachy
Другие вопросы по тегам