เคยสงสัยหรือไม่ว่ามีวิธีดาวน์โหลดเว็บไซต์โดยไม่ใช้เว็บเบราว์เซอร์หรือไม่? คุณโชคดี ด้วยพลังของบรรทัดคำสั่ง Linux ทุกสิ่งเป็นไปได้ มีหลายวิธีในการดำเนินการให้เสร็จสิ้น แต่เรากำลังเน้นที่ wget ในบทความนี้
wget คืออะไร
wget เป็นยูทิลิตี้บรรทัดคำสั่งของ GNU สำหรับการดึงเนื้อหาจากเว็บเซิร์ฟเวอร์ ในฐานะผู้ดาวน์โหลด wget นั้นทรงพลังมากในตัวของมันเอง wget สามารถทำงานกับหลายโปรโตคอล เช่น HTTP, HTTPS และ FTP ความสามารถอื่นๆ ของยูทิลิตี้ wget ได้แก่:
- ความสามารถในการทำงานอย่างเงียบ ๆ หรือในพื้นหลัง
- ผสานรวมกับสคริปต์ Linux หรืองาน CRON
- สามารถเรียกใช้การดาวน์โหลดหลายรายการพร้อมกัน
- ดาวน์โหลดไฟล์ที่ต้องใช้รหัสผ่าน
ทำไมต้องโง่
แม้ว่าจะมีเครื่องมือมากมายที่สามารถทำกิจกรรมเว็บไซต์ได้ แต่ wget อนุญาตให้มีขอบเขตกว้างๆ ช่วยให้ผู้ใช้สามารถทำงานได้โดยไม่ต้องมีเว็บเบราว์เซอร์โดย:
- ดาวน์โหลดสำเนาเว็บไซต์ทั้งหมด
- ดาวน์โหลดไฟล์เฉพาะจากเว็บไซต์
- เรียกไฟล์อัตโนมัติตามต้องการ
- การรับเอกสารจากพอร์ทัลการตรวจสอบความถูกต้อง
wget ยังถูกสร้างใน Linux distros ส่วนใหญ่ด้วย ดังนั้นจึงพร้อมใช้งานตั้งแต่เริ่มต้น และไม่จำเป็นต้องติดตั้งเพิ่มเติม
wget พื้นฐาน
การเริ่มต้นใช้งาน wget นั้นค่อนข้างง่าย ขั้นแรก เปิด Linux Terminal
เมื่อหน้าต่างเทอร์มินัลเปิดขึ้น คุณสามารถเรียกใช้ wget ดังที่แสดงด้านล่าง:
wget URL
แทนที่ “URL” ด้วย URL ที่ถูกต้องของเว็บไซต์
หากต้องการให้ไฟล์ที่ดาวน์โหลดมาบางส่วนกลับมาทำงานต่อ ให้ใช้ -c
สลับคำสั่งของคุณดังนี้:
wget -c URL
ในการทำให้การดาวน์โหลด wget ของคุณไม่มีเสียง ให้เพิ่ม -q
เปลี่ยนไปใช้คำสั่ง wget เริ่มต้นของคุณ:
wget -q URL
หากคุณไม่แน่ใจเกี่ยวกับการใช้ตัวเลือกที่เหมาะสมภายใน wget ให้ใช้สิ่งต่อไปนี้:
wget --help
นอกเหนือจากเว็บไซต์ คุณยังสามารถดาวน์โหลดไฟล์โดยใช้ wget ตัวอย่างเช่น:
wget https://example.com/file.zip
มันก็จะคว้าไฟล์และบันทึกลงในไดเร็กทอรีปัจจุบัน
หากคุณต้องการบันทึกไปยังชื่อไฟล์อื่นหรือตำแหน่งอื่น ให้ใช้ -O
ธง.
wget https://example.com/file.zip -O ~/Documents/my_downloaded_file.zip
ตัวเลือก FTP
ตามที่ระบุไว้ก่อนหน้านี้ wget รองรับ FTP เช่นกัน หากคุณเพียงแค่ระบุไซต์ FTP:
wget ftp://ftp.example.com
wget จะถือว่าคุณต้องการเข้าสู่ระบบแบบไม่ระบุชื่อ อีกวิธีหนึ่ง คุณสามารถระบุสิ่งต่างๆ เช่น ชื่อผู้ใช้และรหัสผ่านด้วยตนเองโดยใช้แฟล็กต่อไปนี้:
--ftp-user=USER
:ระบุชื่อผู้ใช้สำหรับเข้าสู่ระบบ--ftp-password=PASS
:ระบุรหัสผ่าน--no-passive-ftp
:ปิดใช้งานโหมดถ่ายโอนแบบพาสซีฟ
หมดเวลา ลองใหม่ และดาวน์โหลดไม่สำเร็จ
สุดท้าย wget มาพร้อมกับตัวเลือกมากมายที่เกี่ยวข้องกับปัญหาการเชื่อมต่อเซิร์ฟเวอร์และการหมดเวลา แน่นอนว่าไม่สามารถจัดการความล้มเหลวได้ทั้งหมด แต่แฟล็กต่อไปนี้มีจุดประสงค์เพื่อช่วยจัดการกับปัญหาเซิร์ฟเวอร์:
--tries=NUMBER
:ระบุจำนวนครั้งในการลองดาวน์โหลดอีกครั้ง--retry-connrefused
:ลองดาวน์โหลดอีกครั้งแม้ว่าเซิร์ฟเวอร์จะปฏิเสธการเชื่อมต่อ--timeout=SECONDS
:การตั้งค่าส่วนกลาง – ต้องรอนานแค่ไหนก่อนที่จะหมดเวลา--wait=SECONDS
:ระยะเวลารอระหว่างการดาวน์โหลดที่สำเร็จ (หากเกิดซ้ำ)
ใครจะใช้ wget?
ในการอ่านโพสต์นี้ คุณอาจกำลังคิดว่า “ฟังดูซับซ้อนและยากกว่าการใช้เว็บเบราว์เซอร์มาก” แต่ใครๆ ก็สามารถใช้ยูทิลิตี้นี้ได้ ไม่ว่าจะเป็นผู้ดูแลระบบหรือโปรแกรมเมอร์ ด้านล่างนี้คือตัวอย่างวิธีที่ฉันใช้คำสั่งนี้ตลอดทั้งวัน โดยที่บทบาทอาจเปลี่ยนไปในบางครั้ง
มันทำให้งานของฉันในฐานะนักวิจัยด้านความปลอดภัยง่ายขึ้น เพราะฉันสามารถกำหนดเวลาคำสั่งนี้ให้ดาวน์โหลดหลายเว็บไซต์พร้อมกันได้ ฉันทำได้โดยสร้างไฟล์ข้อความ (โดยใช้โปรแกรมแก้ไขข้อความ) ที่มี URL จำนวนหนึ่งในรายการ (หนึ่ง URL ต่อบรรทัด) โดยดำเนินการคำสั่งด้านล่างด้วย -i
เปลี่ยน wget จะดาวน์โหลดแต่ละเว็บไซต์ในรายการ
wget -i download_file_name URL
ในฐานะผู้ดูแลระบบ ฉันสามารถรับเอกสารจากสถานที่ที่มีการป้องกันด้วยรหัสผ่านได้อย่างง่ายดาย สิ่งนี้อาจไม่ช่วยคุณเช่นกันออฟไลน์ แต่ด้วยการเรียกใช้ wget อนุญาต จะช่วยให้คุณเพิ่มข้อมูลรับรองให้กับไซต์ได้
wget --user=user_id --password=user_password URL
ที่นั่นคุณมีมัน! มันยากอย่างที่คิดหรือเปล่า? ความสามารถในการทำให้การกระทำของคุณเป็นอัตโนมัติด้วย wget จะช่วยคุณประหยัดเวลาและช่วยให้คุณทำงานแบบออฟไลน์ได้เช่นกัน ต้องเสียอะไรไหม
แสดงความคิดเห็นด้านล่างและแจ้งให้เราทราบว่าคุณพบว่ามีประโยชน์หรือไม่