Cách wayback
định dạng URL như sau:
http://$BASEURL/$TIMESTAMP/$TARGET
Đây BASEURL
thường là http://web.archive.org/web
(tôi thường nói là tôi không chắc chắn nếu đó là BASEURL duy nhất)
TARGET
là tự giải thích (trong trường hợp của bạn http://nature.com
hoặc một số URL tương tự)
TIMESTAMP
là YYYYmmddHHMMss
khi việc chụp được thực hiện (bằng UTC):
YYYY
: Năm
mm
: Tháng (2 chữ số - 01 đến 12)
dd
: Ngày trong tháng (2 chữ số - 01 đến 31)
HH
: Giờ (2 chữ số - 00 đến 23)
MM
: Phút (2 chữ số - 00 đến 59)
ss
: Thứ hai (2 chữ số - 00 đến 59)
Trong trường hợp bạn yêu cầu thời gian bắt giữ không tồn tại, máy quay ngược lại chuyển hướng đến lần chụp gần nhất cho URL đó, cho dù trong tương lai hay quá khứ.
Bạn có thể sử dụng tính năng đó để nhận từng URL hàng ngày bằng cách sử dụng curl -I
(HTTP HEAD
) để nhận bộ URL:
BASEURL='http://web.archive.org/web'
TARGET="SET_THIS"
START=1325419200 # Jan 1 2012 12:00:00 UTC (Noon)
END=1356998400 # Tue Jan 1 00:00:00 UTC 2013
if uname -s |grep -q 'Darwin' ; then
DATECMD="date -u '+%Y%m%d%H%M%S' -r "
elif uname -s |grep -q 'Linux'; then
DATECMD="date -u +%Y%m%d%H%M%S -d @"
fi
while [[ $START -lt $END ]]; do
TIMESTAMP=$(${DATECMD}$START)
REDIRECT="$(curl -sI "$BASEURL/$TIMESTAMP/$TARGET" |awk '/^Location/ {print $2}')"
if [[ -z "$REDIRECT" ]]; then
echo "$BASEURL/$TIMESTAMP/$TARGET"
else
echo $REDIRECT
fi
START=$((START + 86400)) # add 24 hours
done
Điều này mang lại cho bạn các URL gần nhất vào buổi trưa mỗi ngày năm 2012. Chỉ cần xóa các bản sao và tải xuống các trang.
Lưu ý: Tập lệnh ở trên có thể được cải thiện rất nhiều để nhảy về phía trước trong trường hợp REDIRECT
URL dành cho hơn 1 ngày trong tương lai, nhưng sau đó nó yêu cầu giải mã URL được trả về và điều chỉnh START
theo giá trị ngày chính xác.