การดาวน์โหลดหน้าเว็บ

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, ทำการเรียก, และส่งคำตอบกลับมา ภายในตัวมัน, มันกำลังจัดการเรื่องการเปลี่ยนเส้นทาง, การวิเคราะห์ส่วนหัว, และการจัดการตัวเนื้อหาการตอบกลับเพื่อให้คุณสามารถโฟกัสไปที่ข้อมูลของคุณ, ไม่ใช่ระบบภายใน

ดูเพิ่มเติม

  • พื้นที่เก็บข้อมูล clj-http บน GitHub: https://github.com/dakrone/clj-http
  • Clojure http-kit สำหรับวิธีการอื่น: http://www.http-kit.org
  • เว็บไซต์อย่างเป็นทางการของ Clojure เพื่อให้คุณเรียนรู้เพิ่มเติมเกี่ยวกับภาษา: https://clojure.org