~kris/dots

srice

ref: e9b48d06a8541f3eda5c4db90382ab3c77183afb srice/.local/bin/blog-screenshot -rwxr-xr-x 539 bytes
e9b48d06 — Kris Yotam xprofile: systemd-aware pipewire start + blueman-applet; sb-internet: tolerate missing /proc/net/wireless 2 months ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#!/usr/bin/env sh
set -eu

if [ "$#" -lt 1 ]; then
  printf 'usage: blog-screenshot URL [output.png]\n' >&2
  exit 2
fi

url=$1
out=${2:-"screenshots/$(printf '%s' "$url" | sed -e 's#^https\?://##' -e 's#[^A-Za-z0-9._-]#-#g' -e 's#-*$##').png"}
mkdir -p "$(dirname "$out")"

if command -v shot-scraper >/dev/null 2>&1; then
  shot-scraper "$url" -o "$out"
elif command -v npx >/dev/null 2>&1; then
  npx --yes playwright screenshot "$url" "$out"
else
  printf 'Need shot-scraper or npx playwright.\n' >&2
  exit 1
fi

printf '%s\n' "$out"