summaryrefslogtreecommitdiff
path: root/blq
diff options
context:
space:
mode:
authorJohn Ankarström <john@ankarstrom.se>2020-11-22 01:30:55 +0100
committerJohn Ankarström <john@ankarstrom.se>2020-11-22 01:31:32 +0100
commit850f917b6aaea6f25bab8860ede290eb66fe958b (patch)
tree469403bd96d4ea98bc0e0288c7f763457aed51e9 /blq
parent8b4e99e55b54b61a9b0c7063e9ee8482f99537b0 (diff)
downloadweb-850f917b6aaea6f25bab8860ede290eb66fe958b.tar.gz
blq: Add -r option
The -r option processes the search results with blm and opens the mbox file in a given mail reader.
Diffstat (limited to 'blq')
-rwxr-xr-xblq29
1 files changed, 27 insertions, 2 deletions
diff --git a/blq b/blq
index 0941da8..085136b 100755
--- a/blq
+++ b/blq
@@ -2,7 +2,24 @@
# Perform a search on Blocket.se (API v6, Nov 2020)
-test -z "$1" && { echo usage: $0 query 1>&2; exit 1; }
+usage() { echo usage: $0 query 1>&2; exit 1; }
+
+if which mutt 1>&-
+then : ${MAILER:=mutt -e "set folder=."}
+else : ${MAILER:=mailx}
+fi
+
+# Parse options
+r=
+while getopts rc o
+do
+ case $o in
+ r) r=1 ;; # process with blm and read in MAILER
+ ?) usage ;;
+ esac
+done
+shift $((OPTIND-1))
+test -z "$1" && usage
# Format query string
q=`printf '%s\n' "$1" | sed 's/ /%20/g'`
@@ -11,4 +28,12 @@ q=`printf '%s\n' "$1" | sed 's/ /%20/g'`
tok=`curl -s "https://www.blocket.se/annonser/hela_sverige?q=$q" | awk '/id="initialState"/ {getline; print}' | jq -r .authentication.bearerToken`
# Retrieve search results
-curl -s -H "authorization: Bearer $tok" "https://api.blocket.se/search_bff/v1/content?lim=40&q=$q&st=s&include=all&gl=3&include=extend_with_shipping"
+curl -s -H "authorization: Bearer $tok" "https://api.blocket.se/search_bff/v1/content?lim=40&q=$q&st=s&include=all&gl=3&include=extend_with_shipping" |
+{
+ test ! -z "$r" && {
+ f=/tmp/blq.$RANDOM
+ blm > $f
+ eval $MAILER -f $f < /dev/tty
+ rm $f
+ } || cat
+}