Bash:
การดาวน์โหลดหน้าเว็บ
วิธีการ:
เครื่องมือหลักสำหรับงานนี้? curl
เป็นเครื่องมือใช้งานบรรทัดคำสั่งที่มีพลังในการเรียกข้อมูลจากเว็บ นี่คือกรณีการใช้งานที่ง่ายที่สุด:
curl https://example.com -o webpage.html
คำสั่งนี้ดาวน์โหลด HTML ของ example.com
และเขียนไว้ในไฟล์ที่ชื่อว่า webpage.html
ลองดูผลลัพธ์:
# ตัวอย่างผลลัพธ์
% รวม % รับแล้ว % ถ่ายโอน ความเร็วเฉลี่ย เวลา เวลา เวลา ปัจจุบัน
Dload Upload Total Spent Left Speed
100 1256 100 1256 0 0 6458 0 --:--:-- --:--:-- --:--:-- 6497
ต้องการดูสิ่งที่คุณกำลังดาวน์โหลดในเวลาจริงหรือไม่? ละเว้น -o
และการดาวน์โหลดจะแสดงขึ้นมาเลยในคอนโซลของคุณ:
curl https://example.com
ศึกษาเพิ่มเติม
curl
มีอยู่มาตั้งแต่ปี 1997, สร้างมาตรฐานในการดำเนินการบนเว็บ ทำไมต้องใช้ curl
แทนการดาวน์โหลดผ่านเบราว์เซอร์? การทำงานแบบอัตโนมัติและความเป็นมิตรกับสคริปต์ เป็นการทำงานแบบไม่ต้องป้อนคำสั่งและสามารถนำไปใช้กับสคริปต์บน Bash ได้อย่างง่ายดาย
เครื่องมืออื่นๆ ที่ควรกล่าวถึง: wget
, เครื่องมืออีกตัวหนึ่งที่มีพลังสำหรับบรรทัดคำสั่งที่สามารถดาวน์โหลดเว็บเพจแบบเวียนได้ สำหรับการเก็บข้อมูลจากเว็บที่ต้องการใช้งานหนักหรือต้องการบริบทของเบราว์เซอร์จริง, โปรแกรมเมอร์หันไปใช้เครื่องมืออย่าง Selenium, Puppeteer, หรือ Scrapy
การทำงานของ curl
: มันสนับสนุนโปรโตคอลมากมาย, ตั้งแต่ HTTP และ HTTPS ไปจนถึง FTP, และมีตัวเลือกมากมาย (–header, –cookie, –user-agent, ฯลฯ) สำหรับการปรับแต่งคำขอ นอกจากนี้, มันมักจะมาพร้อมติดตั้งในระบบที่ใช้ Unix
ดูเพิ่มเติม
- เอกสาร Curl: https://curl.haxx.se/docs/manpage.html
- คู่มือ Wget: https://www.gnu.org/software/wget/manual/wget.html
- บทนำสู่การเก็บข้อมูลจากเว็บด้วย Python: https://realpython.com/python-web-scraping-practical-introduction/