Wget конвертирует перенаправленные URL-адреса - PullRequest
0 голосов
/ 26 мая 2020

У меня есть сервер, который использует HTTP 301 постоянное перенаправление для некоторых URL-адресов. На некоторых веб-страницах есть ссылки, которые указывают на еще не перенаправленные URL-адреса, что заставляет Wget сохранять файл в соответствии с еще не перенаправленным URL-адресом. Это вызывает некоторые проблемы. Я хочу, чтобы Wget всегда использовал перенаправленный путь 301. См. Примеры ниже, чтобы лучше понять проблему (также включены некоторые HTML, имитирующие веб-страницы).

Перенаправление 301:

https://example.com/OLD/icon.svg => https://example.com/NEW/icon.svg

HTML (URL = example. com):

<a href="/OLD/icon.svg">Click Me</a>

При использовании Wget для этого выходной каталог будет содержать следующие файлы:

index.html
OLD/icon.svg (this is the same file as NEW/icon.svg, but wrong path)

С содержимым index.html:

<a href="/OLD/icon.svg">Click Me</a>

Однако я бы хотел, чтобы выходной каталог содержал следующие файлы:

index.html
NEW/icon.svg

А содержимое index.html было бы:

<a href="/NEW/icon.svg">Click Me</a>

Другими словами, все перенаправленные URL-адреса (и ссылки, которые на них ссылаются) должны быть преобразованы в их перенаправленные значения. ПРИМЕЧАНИЕ: это не то же поведение, что --convert-links, но все же немного связано. Кроме того, Wget загрузил правильный файл (было выполнено перенаправление), но имя файла не изменилось соответствующим образом.

Возможно ли этого достичь с помощью Wget или другого подобного программного обеспечения?

...