Разгребал тут на форуме топик пятилетней давности и в очередной раз грустил о том, что через пять лет порядка 25% ссылок становятся недоступными. И снова возвращаюсь к идее сохранять копии таких страниц локально и в p2p. Но начинать надо с выкачивания страницы. Понятно, что почти идеальное решение (при чём без альтернативы, увы :-/ ) — Scrabook под Firefox. И хранится удобно, и вычистить страницу от мусора можно. Но это — ручная работа. А в общем случае процесс должен быть автоматическим для форума.
Конечно же, есть wget!
Задача, вроде бы, примитивная — скачать страницу и все картинки (и прочие файлы), на которые страница ссылается. Но не выкачивая страницы, на которые она ссылается! Потому что их бывает очень, очень много...
И вот тут — облом. Если тупо скачивать с --page-requisites
, то страница скачивается в отличном виде, но, понятно, не качаются, например, большие картинки, превьюшки которых стоят на странице.
Если добавляем -r -l1
, то качаем всё, на что страница ссылается, но это ещё и десятки, иногда сотни .html первого уровня и... внезапно! тоже с --page-requisites
— т.е. десятки и сотни картинок со своими ресурсами!
Если качать без --page-requisites
, то наша основная страница качается не целиком, утягиваются не все ресурсы.
Если добавлять --accept '*.jpg'
или --reject '*.html'
, то, опять внезапно, не качается и сама страница, которую мы хотим скачать, так как она — .html
...
httrack тоже задачу не решает :-/
Проблема в картинках, на которые ссылается страница. Т.е.:
<a href="/full-image"><img src="image" /></a>
Если ограничиваться глубиной выкачивания -r1
, то превьюшка качается, полная картинка — нет. Если ставить -r2
, то выкачиваются, порой, тысячи файлов — вплоть до всего сайта.
Если ставить фильтры по расширениям (-* +*.gif +*.jpg +*.png +*.css +*.js
), то с -r2
результат сносный. Но у картинок часто вообще нет расширения и этот метод не работает.
Если ставить фильтры по MIME (-mime:*/* +mime:image/* +mime:text/*
), то с -r2
опять качается [почти] весь сайт, только что кроме картинок и html ничего не останется, но прочего итак мало. Если в mime убирать text/html, то, болезнь wget, не качается и та страница, которую сказали выкачать.
Блин. Простейшая задача в рамках того, что уже умеют wget и httrack, но ни тот, ни другой, решить её не могут 
...
В общем, пока совсем забил на ссылающиеся картинки. Лучше иметь страницу с превьюшками и без полных картинок, чем не иметь ничего 
Примеры сохранённых страниц:
http://gateway.ipfs.io/ipfs/QmVQzXn8pNGDMMdFneffktMKfrUFw7txFv6mBTo3SY71NM
http://gateway.ipfs.io/ipfs/Qmb1Xxv8FoRhMYyqHWpc2hqiedWcS2sTy9eiwuqM5wFXBs
И скрипт по добавлению страниц в IPFS начерно:
https://github.com/Balancer/infonesy/blob/master/tools/pget