From b0cb73addae2f7fdc54fefb89e743d78863e3b52 Mon Sep 17 00:00:00 2001 From: Chris Cochrun Date: Tue, 23 Mar 2021 07:02:52 -0500 Subject: [PATCH] Adding lfgimg written in CL --- scripts/lfgimg.lisp | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100755 scripts/lfgimg.lisp diff --git a/scripts/lfgimg.lisp b/scripts/lfgimg.lisp new file mode 100755 index 0000000..638c859 --- /dev/null +++ b/scripts/lfgimg.lisp @@ -0,0 +1,30 @@ +#!/usr/bin/sbcl --script + +(load "~/quicklisp/setup.lisp") +(ql:quickload '(drakma lquery)) + +(defun get-images () + (loop for i from 748 to 1489 do + (let* ((request (drakma:http-request + (concatenate 'string "https://www.lfg.co/page/" (write-to-string i)))) + (parsed-content (lquery:$ (lquery:initialize request))) + (url (vector-pop (lquery:$ parsed-content "img" (attr :src)))) + (img (drakma:http-request url))) + + (if (not (search ".jpg" url)) + (with-open-file (stream + (concatenate 'string "/home/chris/Pictures/lfg/" (write-to-string i) ".gif") + :direction :output + :if-exists :supersede + :if-does-not-exist :create + :element-type 'unsigned-byte) + (write-sequence img stream)) + (with-open-file (stream + (concatenate 'string "/home/chris/Pictures/lfg/" (write-to-string i) ".jpg") + :direction :output + :if-exists :supersede + :if-does-not-exist :create + :element-type 'unsigned-byte) + (write-sequence img stream)))))) + +(get-images)