ฉันจะดาวน์โหลดเว็บไซต์ทั้งหมดได้อย่างไร


351

ฉันจะดาวน์โหลดหน้าทั้งหมดจากเว็บไซต์ได้อย่างไร

แพลตฟอร์มใดก็ได้



@northcutt ฉันประหลาดใจเช่นกัน หากฉันจำไม่ผิดอย่างยิ่งคำตอบ Wget ของฉันเคยเป็นคำตอบที่ยอมรับได้ ฉันไม่ได้บ่นเลย - ในทันใดความสนใจที่ได้รับการปรับปรุงใหม่ทั้งหมดทำให้ฉันมีค่ามากกว่าความน่าสนใจของตัวแทน : P
Jonik

คุณลอง IDM ไหม superuser.com/questions/14403/…โพสต์ของฉันถูกฝัง คุณพบสิ่งใดหายไปใน IDM
Lazer

5
@ Joe: อาจช่วยถ้าคุณต้องการให้รายละเอียดเกี่ยวกับสิ่งที่ขาดหายไปจากคุณลักษณะที่มี ...
Ilari Kajaste

Browsing-offline.comสามารถดาวน์โหลดแผนผังสมบูรณ์ของเว็บไซต์เพื่อให้คุณสามารถ ... เรียกดูแบบออฟไลน์
Menelaos Vergis

คำตอบ:


334

HTTRACK ใช้งานได้อย่างยอดเยี่ยมสำหรับการคัดลอกเนื้อหาของเว็บไซต์ทั้งหมด เครื่องมือนี้สามารถจับชิ้นส่วนที่จำเป็นในการสร้างเว็บไซต์ที่มีเนื้อหารหัสที่ใช้งานทำงานแบบออฟไลน์ ฉันประหลาดใจกับสิ่งที่สามารถจำลองแบบออฟไลน์ได้

โปรแกรมนี้จะทำทุกอย่างที่คุณต้องการ

การล่าสัตว์ที่มีความสุข!


7
เคยใช้สิ่งนี้มานานหลายปี - แนะนำเป็นอย่างยิ่ง
Umber Ferrule

4
นี่จะเป็นการคัดลอกรหัส ASP จริงที่รันบนเซิร์ฟเวอร์หรือไม่
Taptronic

8
@ โซลูชั่นที่ดีที่สุด: ไม่นั่นเป็นไปไม่ได้ คุณต้องเข้าถึงเซิร์ฟเวอร์หรือซอร์สโค้ดสำหรับสิ่งนั้น
Sasha Chedygov

2
หลังจากทดลองใช้ทั้ง httrack และเว็บไซต์ที่ได้รับอนุญาตฉันต้องพึ่งพา wget ไม่สามารถรับ httrack ให้ทำงานในกรณีเหล่านี้ได้
Leo

1
ตัวเลือกสำหรับการรับรองความถูกต้องคืออะไร?
วินเซนต์แม็ตธิว

272

Wgetเป็นเครื่องมือบรรทัดคำสั่งแบบคลาสสิกสำหรับงานประเภทนี้ มันมาพร้อมกับระบบ Unix / Linux ส่วนใหญ่และคุณสามารถใช้กับ Windows ได้เช่นกัน สำหรับ Mac นั้นHomebrewเป็นวิธีที่ง่ายที่สุดในการติดตั้ง ( brew install wget)

คุณต้องการทำสิ่งที่ชอบ:

wget -r --no-parent http://site.com/songs/

สำหรับรายละเอียดเพิ่มเติมดูคู่มือ Wgetและตัวอย่างหรือตัวอย่างเหล่านี้:


12
ไม่มีคำตอบที่ดีไปกว่านี้ - wget สามารถทำอะไรได้บ้าง: 3
Phoshi

6
+1 สำหรับการรวม --no-parent ใช้แน่นอน - มิเรอร์แทน -r และคุณอาจต้องการรวม -L / - ที่เกี่ยวข้องกับไม่ติดตามลิงก์ไปยังเซิร์ฟเวอร์อื่น ๆ
ต้มตุ๋น Quixote

2
ขณะที่ฉันขอให้ httrack.com - เครื่องมือบรรทัด cmd นี้จะได้รับรหัส ASP หรือมันจะได้รับการแสดงผลของ HTML หรือไม่ ฉันต้องลองสิ่งนี้ ซึ่งอาจจะเป็นบิตที่น่าเป็นห่วงสำหรับนักพัฒนาถ้ามันไม่ ...
Taptronic

6
@optimal, เอาท์พุท HTML แน่นอน - มันจะได้รับรหัสเฉพาะในกรณีที่เซิร์ฟเวอร์ได้รับการกำหนดค่าผิดพลาดอย่างรุนแรง
Jonik

2
น่าเสียดายที่มันใช้งานไม่ได้สำหรับฉัน - มีปัญหากับลิงก์ไปยังไฟล์ css พวกเขาจะไม่เปลี่ยนเป็นญาติเช่นคุณสามารถเห็นบางสิ่งเช่นนี้ในไฟล์: <link rel = "stylesheet" type = "text / css" href = "/ static / css / reset.css" media = "screen" /> ซึ่งใช้งานไม่ได้ดีในพื้นที่เว้นแต่ว่าจะมี waz เพื่อหลอกลวง firefox ให้คิดว่า dir บางตัวเป็นรูต
gorn

148

ใช้ wget:

wget -m -p -E -k www.example.com

ตัวเลือกที่อธิบาย:

-m, --mirror            Turns on recursion and time-stamping, sets infinite 
                          recursion depth, and keeps FTP directory listings.
-p, --page-requisites   Get all images, etc. needed to display HTML page.
-E, --adjust-extension  Save HTML/CSS files with .html/.css extensions.
-k, --convert-links     Make links in downloaded HTML point to local files.

8
+1 สำหรับการให้คำอธิบายสำหรับตัวเลือกที่แนะนำ (แม้ว่าฉันไม่คิดว่า--mirrorอธิบายตนเองได้มากนี่มาจาก man page: " ตัวเลือกนี้เปิดการเรียกซ้ำและการลงเวลาตั้งค่าความลึกการวนซ้ำแบบไม่สิ้นสุดและเก็บรายชื่อไดเรกทอรี FTP ปัจจุบันเทียบเท่ากับ -r -N - l inf - no-remove-listing ")
Ilari Kajaste

2
หากคุณไม่ต้องการดาวน์โหลดทุกสิ่งลงในโฟลเดอร์ที่มีชื่อโดเมนที่คุณต้องการทำมิเรอร์ให้สร้างโฟลเดอร์ของคุณเองและใช้ตัวเลือก -nH (ซึ่งข้ามส่วนโฮสต์)
Rafael Bugajewski

2
ถ้าหากต้องการ Auth
Val

4
ฉันลองใช้ของคุณwget --mirror -p --html-extension --convert-links www.example.comและมันเพิ่งดาวน์โหลดดัชนี ฉันคิดว่าคุณจำเป็นต้อง-rดาวน์โหลดเว็บไซต์ทั้งหมด
Eric Brotto

4
สำหรับผู้ที่กังวลเกี่ยวกับการฆ่าไซต์เนื่องจากปริมาณการใช้งาน / คำขอมากเกินไปให้ใช้-w seconds(เพื่อรอจำนวนวินาทีในระหว่างคำขอหรือ--limit-rate=amountเพื่อระบุแบนด์วิดท์สูงสุดที่จะใช้ขณะดาวน์โหลด
vlad-ardelean

8

คุณควรดูScrapBookซึ่งเป็นส่วนเสริมของ Firefox มันมีโหมดจับภาพในเชิงลึก

ป้อนคำอธิบายรูปภาพที่นี่


5
ไม่สามารถใช้งานร่วมกับ Firefox ได้หลังจากเวอร์ชัน 57 (Quantum)
Yay295

8

Internet Download Managerมียูทิลิตี Grabber ไซต์พร้อมตัวเลือกมากมาย - ให้คุณดาวน์โหลดเว็บไซต์ใด ๆ ที่คุณต้องการตามที่คุณต้องการ

  1. คุณสามารถกำหนดขีด จำกัด ตามขนาดของหน้า / ไฟล์ที่จะดาวน์โหลด

  2. คุณสามารถกำหนดจำนวนสาขาของเว็บไซต์ที่จะเยี่ยมชม

  3. คุณสามารถเปลี่ยนวิธีการทำงานของสคริปต์ / ป๊อปอัป / การทำซ้ำ

  4. คุณสามารถระบุโดเมนได้เฉพาะภายใต้โดเมนหน้า / ไฟล์ทั้งหมดที่ตรงกับการตั้งค่าที่ต้องการจะถูกดาวน์โหลด

  5. ลิงก์สามารถแปลงเป็นลิงก์ออฟไลน์เพื่อเรียกดูได้

  6. คุณมีเทมเพลตที่ให้คุณเลือกการตั้งค่าด้านบนได้

ป้อนคำอธิบายรูปภาพที่นี่

อย่างไรก็ตามซอฟต์แวร์นี้ไม่ฟรี - ดูว่าเหมาะสมกับความต้องการของคุณหรือไม่ใช้เวอร์ชันทดลองใช้



5

ฉันจะระบุบัฟเฟอร์ออนไลน์ที่เบราว์เซอร์ใช้ ...

โดยทั่วไปแล้วเบราว์เซอร์ส่วนใหญ่ใช้แคชการค้นหาเพื่อเก็บไฟล์ที่คุณดาวน์โหลดจากเว็บไซต์ไว้สักระยะหนึ่งเพื่อให้คุณไม่ต้องดาวน์โหลดรูปภาพและเนื้อหาแบบคงที่ซ้ำแล้วซ้ำอีก สิ่งนี้สามารถเร่งความเร็วของสิ่งต่าง ๆ ได้ค่อนข้างน้อยในบางสถานการณ์ โดยทั่วไปแคชของเบราว์เซอร์ส่วนใหญ่จะ จำกัด ขนาดที่แน่นอนและเมื่อถึงขีด จำกัด ดังกล่าวแคชนั้นจะลบไฟล์ที่เก่าที่สุดในแคช

ผู้ให้บริการอินเทอร์เน็ตมักจะมีเซิร์ฟเวอร์แคชที่เก็บสำเนาของเว็บไซต์ที่เข้าถึงได้ทั่วไปเช่น ESPN และ CNN วิธีนี้ช่วยให้พวกเขาไม่ต้องกดปุ่มเว็บไซต์เหล่านี้ทุกครั้งที่มีคนในเครือข่ายไปถึงที่นั่น สิ่งนี้สามารถช่วยประหยัดเงินได้อย่างมากในจำนวนคำขอซ้ำซ้อนไปยังไซต์ภายนอกไปยัง ISP




4

ฉันไม่ได้ทำสิ่งนี้ในหลายปีที่ผ่านมา คุณอาจต้องการที่จะลองเว็บงู ฉันเชื่อว่าฉันใช้มันเมื่อหลายปีก่อน ฉันจำชื่อได้ทันทีเมื่อฉันอ่านคำถามของคุณ

ฉันเห็นด้วยกับ Stecy กรุณาอย่าค้อนไซต์ของพวกเขา ที่เลวร้ายมาก.


3

ลองถนนหลังบ้านเบราว์เซอร์

มันเป็นเบราว์เซอร์ออฟไลน์ฟรีที่ทรงพลัง โปรแกรมดาวน์โหลดและดูเว็บไซต์แบบหลายเธรดความเร็วสูง ด้วยการส่งคำขอเซิร์ฟเวอร์หลาย ๆ ตัวพร้อมกัน BackStreet Browser สามารถดาวน์โหลดเว็บไซต์ทั้งหมดหรือบางส่วนของเว็บไซต์อย่างรวดเร็วเช่น HTML, กราฟิก, Java Applets, เสียงและไฟล์อื่น ๆ ที่ผู้ใช้กำหนดได้และบันทึกไฟล์ทั้งหมดในฮาร์ดไดรฟ์ของคุณ หรือเป็นไฟล์บีบอัดและดูแบบออฟไลน์

ป้อนคำอธิบายรูปภาพที่นี่


3

Teleport Proเป็นโซลูชันฟรีอีกตัวที่จะคัดลอกไฟล์ใด ๆ และทั้งหมดจากสิ่งที่คุณกำหนดเป้าหมาย (ยังมีเวอร์ชันที่ต้องชำระเงินซึ่งจะช่วยให้คุณดึงหน้าเนื้อหาได้มากขึ้น)


3

DownThemAllเป็นส่วนเสริมของ Firefox ที่จะดาวน์โหลดเนื้อหาทั้งหมด (ไฟล์เสียงหรือวิดีโอเป็นต้น) สำหรับหน้าเว็บหนึ่ง ๆ ในคลิกเดียว นี่ไม่ได้ดาวน์โหลดทั้งไซต์ แต่อาจเป็นสิ่งที่คำถามกำลังมองหาอยู่


สามารถดาวน์โหลดลิงค์ (HTML) และสื่อ (ภาพ) ได้เท่านั้น
Ain

3

สำหรับ Linux และ OS X: ฉันเขียนgrab-siteเพื่อเก็บถาวรทั้งเว็บไซต์ไปยังไฟล์WARC ไฟล์ WARC เหล่านี้สามารถเรียกดูหรือแตกไฟล์ได้ grab-site ให้คุณควบคุม URL ที่จะข้ามโดยใช้นิพจน์ทั่วไปและสิ่งเหล่านี้สามารถเปลี่ยนแปลงได้เมื่อการรวบรวมข้อมูลกำลังทำงาน นอกจากนี้ยังมาพร้อมกับชุดค่าเริ่มต้นมากมายสำหรับละเว้น URL ขยะ

มีเว็บแดชบอร์ดสำหรับตรวจสอบการรวบรวมข้อมูลรวมถึงตัวเลือกเพิ่มเติมสำหรับการข้ามเนื้อหาวิดีโอหรือการตอบกลับในขนาดที่กำหนด


1

พลังงาน wget

ในขณะที่ wget ได้กล่าวถึงทรัพยากรนี้แล้วและบรรทัดคำสั่งนั้นราบรื่นมากฉันคิดว่ามันสมควรได้รับการกล่าวถึง: wget -P /path/to/destination/directory/ -mpck --user-agent="" -e robots=off --wait 1 -E https://www.example.com/

ดูรหัสนี้อธิบายใน explshell


0

FreeDownloadManager.org ที่เคารพมีคุณสมบัตินี้เช่นกัน

ตัวจัดการดาวน์โหลดฟรีมีสองรูปแบบในสองรูปแบบ: Site Explorer และ Site Spider :

Site Explorer
Site Explorer ช่วยให้คุณดูโครงสร้างโฟลเดอร์ของเว็บไซต์และดาวน์โหลดไฟล์หรือโฟลเดอร์ที่จำเป็น
HTML Spider
คุณสามารถดาวน์โหลดเว็บเพจทั้งหมดหรือแม้แต่เว็บไซต์ทั้งหมดด้วย HTML Spider เครื่องมือสามารถปรับให้ดาวน์โหลดไฟล์ที่มีนามสกุลเฉพาะเท่านั้น

ฉันพบว่า Site Explorer มีประโยชน์ในการดูว่าโฟลเดอร์ใดที่จะรวม / ไม่รวมก่อนที่คุณจะพยายามดาวน์โหลดทั้งเว็บไซต์โดยเฉพาะเมื่อมีฟอรัมทั้งหมดซ่อนอยู่ในไซต์ที่คุณไม่ต้องการดาวน์โหลดตัวอย่าง



-3

Firefox สามารถทำได้โดยกำเนิด (อย่างน้อย FF 42 สามารถ) เพียงใช้ "บันทึกหน้า"

ป้อนคำอธิบายรูปภาพที่นี่


6
ไม่ถูกต้อง! คำถามจะถามวิธีบันทึกเว็บไซต์ทั้งหมด Firefox ไม่สามารถทำเช่นนั้นได้

2
วิธีการของคุณใช้งานได้เฉพาะในกรณีที่เป็นไซต์เดียว แต่ถ้าไซต์มีหน้า 699 หน้า คงจะเหนื่อยมาก ...
2559

-4

ฉันเชื่อว่า google chrome สามารถทำได้บนอุปกรณ์เดสก์ท็อปเพียงไปที่เมนูเบราว์เซอร์และคลิกบันทึกหน้าเว็บ

นอกจากนี้โปรดทราบว่าบริการเช่นกระเป๋าอาจไม่ได้บันทึกเว็บไซต์จริง ๆ และมีความเสี่ยงที่จะเชื่อมโยงเน่า

สุดท้ายโปรดทราบว่าการคัดลอกเนื้อหาของเว็บไซต์อาจเป็นการละเมิดลิขสิทธิ์หากมีการใช้งาน


3
เว็บหน้าในเบราว์เซอร์ของคุณเป็นเพียงหนึ่งในหลายเว็บเว็บไซต์
Arjan

@Arjan ฉันเดาว่าจะทำให้ตัวเลือกของฉันใช้แรงงานเข้มข้น ฉันเชื่อว่ามันเป็นเรื่องธรรมดาสำหรับคนที่ต้องการบันทึกหน้าเดียวดังนั้นคำตอบนี้อาจดีกว่าสำหรับคนที่มาที่นี่
jiggunjer
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.