Passively capture, archive, and hoard your web browsing history, including the contents of the pages you visit, for later offline viewing, mirroring, and/or indexing. Your own personal private Wayback Machine that can also archive HTTP POST
requests and responses, as well as most other HTTP
-level data.
#!/usr/bin/env bash
set -e
usage() {
cat << EOF
usage: $0 [--help] WRR_FILE
Generate a plain text preview of a WRR file containing an HTML document using \`pandoc\`.
# Options:
--help print this message and exit
--raw-url print the raw URL stored in the WRR_FILE
--net-url format the URL using on-the-wire representation
--pretty-url format the URL prettily; default
--normalized-url normalize the URL removing empty query parameters, and then format the URL prettily
-t FORMAT, --to FORMAT
\`pandoc\` output format: default: \`plain\`
# Example:
$0 path/to/wrr/file/containing/html.wrr
EOF
}
kind=pretty_url
to=plain
while (($# > 0)); do
case "$1" in
--help) usage; exit 0 ;;
--raw-url) kind=raw_url ;;
--net-url) kind=net_url ;;
--pretty-url) kind=pretty_url ;;
--normalized-url) kind=pretty_nurl ;;
--to) to="$2"; shift ;;
*) break ;;
esac
shift
done
(($# > 0)) || { echo "error: need a WRR_FILE"; echo; usage; exit 1; } >&2
trap '[[ -n "$tmp" ]] && rm -f "$tmp"' 0
tmp=$(mktemp hoardy-web-view-pandoc.XXXXXXXX.html)
hoardy-web get -l \
-e "$kind|add_prefix '# url: '" \
--expr-fd 3 \
-e "response.body|eb" \
-- "$1" 3> "$tmp"
echo
pandoc -f html -t "$to" --wrap=none "$tmp"