Загрузка веб-страницы

Clojure:
Загрузка веб-страницы

Как сделать:

В Clojure вы можете использовать clj-http для быстрого скачивания веб-страницы. Вот простейший пример:

(require '[clj-http.client :as client])

(defn download-page [url]
  (client/get url))

;; Используйте это так:
(defn -main []
  (println (download-page "http://example.com")))

Если попробуете, вы получите карту полную деталей. Главное содержится под :body и :status.

Подробнее

Исторически, скачивание из веба было выполнением ‘wget’ или ‘curl’ в командной строке. Сейчас, языки программирования, как Clojure, абстрагируют это с помощью библиотек. clj-http - одна из таких библиотек, которая оборачивает Apache HttpComponents для Java в стиле функционального программирования Clojure.

Есть альтернативы? Конечно. Вы могли бы напрямую использовать java.net.HttpURLConnection или выбрать другую библиотеку, как http-kit – но clj-http удобен и содержит большинство необходимых вещей “из коробки”.

Что касается основных моментов, clj-http превращает ваш запрос в HTTP сущность Java, делает вызов и возвращает ответ. За кулисами, он обрабатывает перенаправления, разбирает заголовки и управляет телом ответа, так что вы можете сосредоточиться на ваших данных, а не на механике.

Смотрите также