ฉันต้องการดาวน์โหลดสำเนาของเว็บเพจในท้องถิ่นและรับ css, รูปภาพ, javascript และอื่น ๆ ทั้งหมด
ในการอภิปรายก่อนหน้านี้ (เช่นที่นี่และที่นี่ซึ่งทั้งสองมีความเก่าแก่กว่าสองปี) สองข้อเสนอแนะที่จะใส่ไปข้างหน้าโดยทั่วไป: wget -p
และHTTrack อย่างไรก็ตามคำแนะนำเหล่านี้ล้มเหลว ฉันซาบซึ้งมากที่ได้รับความช่วยเหลือในการใช้เครื่องมือเหล่านี้เพื่อทำงานให้สำเร็จ ทางเลือกก็น่ารักเช่นกัน
ตัวเลือกที่ 1: wget -p
wget -p
ประสบความสำเร็จในการดาวน์โหลดข้อกำหนดเบื้องต้นทั้งหมดของหน้าเว็บ (css, รูปภาพ, js) อย่างไรก็ตามเมื่อฉันโหลดสำเนาโลคัลในเว็บเบราว์เซอร์หน้าไม่สามารถโหลดสิ่งที่จำเป็นต้องมีได้เนื่องจากเส้นทางไปยังสิ่งที่จำเป็นต้องมีเหล่านั้นยังไม่ได้รับการแก้ไขจากเวอร์ชันบนเว็บ
ตัวอย่างเช่น:
- ใน html ของหน้า
<link rel="stylesheet href="https://stackoverflow.com/stylesheets/foo.css" />
จะต้องได้รับการแก้ไขให้ชี้ไปที่เส้นทางสัมพัทธ์ใหม่ของfoo.css
- ในไฟล์ css
background-image: url(/images/bar.png)
จะต้องมีการปรับเช่นเดียวกัน
มีวิธีการแก้ไขwget -p
เพื่อให้เส้นทางถูกต้องหรือไม่
ตัวเลือก 2: httrack
httrack
ดูเหมือนจะเป็นเครื่องมือที่ยอดเยี่ยมสำหรับการทำมิเรอร์เว็บไซต์ทั้งหมด แต่ก็ไม่มีความชัดเจนสำหรับฉันที่จะใช้มันเพื่อสร้างสำเนาของหน้าเดียว มีการถกเถียงกันอย่างมากในฟอรั่ม httrack เกี่ยวกับหัวข้อนี้ (เช่นที่นี่ ) แต่ดูเหมือนไม่มีใครที่จะมีวิธีแก้ปัญหากระสุน
ตัวเลือก 3: เครื่องมืออื่นหรือไม่
บางคนแนะนำเครื่องมือการชำระเงิน แต่ฉันไม่อยากจะเชื่อเลยว่านั่นจะไม่มีทางออกฟรี
wget --random-wait -r -p -e robots=off -U mozilla http://www.example.com
wget -E -H -k -K -p http://example.com
- ใช้ได้เฉพาะกับฉันเท่านั้น เครดิต: superuser.com/a/136335/94039