Bladeren bron

Minor fixes

Innocenty Enikeew 10 jaren geleden
bovenliggende
commit
4af7cad75e
2 gewijzigde bestanden met toevoegingen van 7 en 8 verwijderingen
  1. 1 1
      chatikbot.lisp
  2. 6 7
      rss.lisp

+ 1 - 1
chatikbot.lisp

@@ -384,7 +384,7 @@
         (log:info "Fetching new items" (feed-url feed))
         (dolist (item (fetch-new-items feed))
           (dolist (chat-id (%feed-send-to feed))
-            (telegram-send-message chat-id (format-feed-item item)))))
+            (telegram-send-message chat-id (format-feed-item item) :disable-web-preview 1))))
     (error (e) (log:error e))))
 
 (defun %load-rss-feeds (alist)

+ 6 - 7
rss.lisp

@@ -17,6 +17,10 @@
 (defun get-by-tag (node tag)
   (nreverse (plump:get-elements-by-tag-name node tag)))
 
+(defun url-parse (url)
+  (plump:parse (flexi-streams:octets-to-string
+                (dex:get (http-default url) :force-binary t) :external-format :utf-8)))
+
 (defun find-rss-url (url)
   (ignore-errors
     (multiple-value-bind (body status headers uri stream)
@@ -35,8 +39,7 @@
            (quri:render-uri uri)))))))
 
 (defun build-feed (url)
-  (let ((root (plump:parse (flexi-streams:octets-to-string
-                            (dex:get url :force-binary t) :external-format :utf-8))))
+  (let ((root (url-parse url)))
     (make-feed :url url :title (child-text root "title"))))
 
 (defun adjust-period (feed coeff)
@@ -91,11 +94,7 @@
 
 (defun parse-rss (url)
   (let ((plump:*tag-dispatchers* plump:*xml-tags*))
-    (loop for item in (get-by-tag
-                       (plump:parse
-                        (flexi-streams:octets-to-string
-                         (dex:get url :force-binary t) :external-format :utf-8))
-                       "item")
+    (loop for item in (get-by-tag (url-parse url) "item")
        collect (make-feed-item :guid (child-text item "guid")
                                :link (child-text item "link")
                                :title (clean-text (child-text item "title"))