Aby zarchiwizować stronę internetową w Wayback Machine Internet Archive, zwykle robię:
wget --spider "https://web.archive.org/save/https://example.com"
Czy istnieje podobna metoda, której mogę użyć do archiwizacji stron internetowych w archive.today ?
Odpowiedź
Przeanalizowałem prośbę o ręczne zapisanie pliku (narzędzia programistyczne Firefoksa mają do tego przydatną funkcję „Kopiuj jako cURL” – zobacz na dole posta rzeczywiste żądanie). Zawiera wiele elementów fluff (klient użytkownika, pliki cookie, pochodzenie itp.), które można pominąć, a unikanie ukośników w adresie URL również nie jest konieczne. Samo wykonanie
curl -v "https://archive.vn/submit/" \ --data-raw "url=https://webapps.stackexchange.com/users/218839/flux"
wystarczy już do zarchiwizowania strony profilu . Początkowo odpowiedzią był kod HTML zawierający link „praca w toku”: https://archive.vn/wip/dk2xB którego możesz użyć do monitorowania postępu i / lub jako końcowego linku.
<html><body><script>setInterval(function(){document.location.replace("https://archive.vn/wip/dk2xB")},1000)</script><div> <img width="48" height="48" style="vertical-align:middle" src="https://archive.vn/loading.gif"/> <span style="vertical-align:middle;font-size:48px;padding-left:5px">Loading</span> <hr/> </div></body></html>
Teraz, gdy spróbuję ponownie, kilka godzin później, nie otrzymuj HTML jako odpowiedzi, ale HTTP 302 (znaleziony) z końcowym adresem URL w nagłówku lokalizacji: https://archive.vn/dk2xB .
Tak wygląda zarchiwizowana strona:
Oryginalne żądanie cURL to
curl "https://archive.vn/submit/"\ -H "User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:81.0) Gecko/20100101 Firefox/81.0"\ -H "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8"\ -H "Accept-Language: en-US,en;q=0.5"\ --compressed\ -H "Content-Type: application/x-www-form-urlencoded"\ -H "Origin: https://archive.vn"\ -H "Connection: keep-alive"\ -H "Referer: https://archive.vn/"\ -H "Cookie: _ga=GA1.2.661111166.1603535444"\ -H "Upgrade-Insecure-Requests: 1"\ -H "TE: Trailers"\ --data-raw "submitid=1Z%2FjKja%2BtkGo%2BmykS2%2BrMYgTje4YZV9xk8OIlwY4NT2mLExajP7ZRmnTbJku2aMX&url=https%3A%2F%2Fwebapps.stackexchange.com%2Fquestions%2F148066%2Fhow-do-i-archive-a-webpage-to-archive-today-using-wget-or-curl"