ปัญหาในการใช้ wget หรือ httrack เพื่อสะท้อนเว็บไซต์ที่เก็บถาวร


12

ฉันพยายามใช้ wget เพื่อสร้างมิเรอร์ท้องถิ่นของเว็บไซต์ แต่ฉันพบว่าฉันไม่ได้รับหน้าเชื่อมโยงทั้งหมด

นี่คือเว็บไซต์

http://web.archive.org/web/20110722080716/http://cst-www.nrl.navy.mil/lattice/

ฉันไม่ต้องการหน้าเว็บทั้งหมดที่เริ่มต้นด้วยแต่ฉันต้องการให้หน้าทั้งหมดที่ขึ้นต้นด้วยweb.archive.orghttp://web.archive.org/web/20110722080716/http://cst-www.nrl.navy.mil/lattice/

เมื่อฉันใช้wget -rในโครงสร้างไฟล์ของฉันฉันพบ

web.archive.org/web/20110722080716/http://cst-www.nrl.navy.mil/lattice/index.html,

แต่ฉันไม่มีไฟล์ทั้งหมดที่เป็นส่วนหนึ่งของฐานข้อมูลนี้เช่น

web.archive.org/web/20110808041151/http://cst-www.nrl.navy.mil/lattice/struk/d0c.html.

บางที httrack อาจจะทำได้ดีกว่า แต่ตอนนี้มันโลภมากเกินไป

ดังนั้นวิธีที่เป็นไปได้ที่จะคว้าสำเนาของเว็บไซต์ที่เก็บถาวรจากInternet Way Way Machine Machine?


ชาย! ฉันพยายามที่จะสะท้อนหน้าเดียวกันทุกประการ (และโกรธจริง ๆ ที่ฉันไม่ได้ทำเมื่อไซต์ดั้งเดิมยังคงออนไลน์ซึ่งจะง่ายกว่านี้มาก) ฉันคิดว่าปัญหาคือไฟล์บางไฟล์ไม่สามารถเข้าถึงได้ภายใต้ส20110722080716แน็ปช็อต-npตัวเลือกของ wget จะไม่ช่วย
mpy

คุณตรวจสอบด้วยตนเองหรือไม่ว่าหน้าที่หายไปนั้นถูกเก็บถาวรจริงหรือไม่? Archive.org ไม่ได้เก็บถาวรทุกหน้าเดียว
nitro2k01

คำตอบ:


20

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

พื้นหลัง

อย่างไรก็ตามก่อนที่เราจะไปถึงจุดนั้นลองพิจารณาการตอบรับที่ดีของmpy ใน h [คือ | er] โพสต์ที่ถูกทอดทิ้งอย่างเศร้าใจ, mpyอย่างจริงจังเอกสารโครงการ Wayback Machine ชัดเจน (และ obfuscatory สุจริต) เก็บเอกสาร

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

การทำความเข้าใจกับข้อผิดพลาดที่น่ากลัวที่นำเสนอโดยโครงการนี้เป็นหลักในการทำความเข้าใจความไม่เพียงพอของการแก้ปัญหาก่อนหน้านี้ ไปต่อด้วยกันได้ไหม

โซลูชันก่อน 1: wget

คำถาม StackOverflow ที่เกี่ยวข้อง"กู้คืนเว็บไซต์เก่าจาก waybackmachine"น่าจะเป็นผู้กระทำความผิดที่เลวร้ายที่สุดในเรื่องนี้แนะนำให้wgetใช้วิธีการสะท้อนกลับของ Wayback คำแนะนำนั้นเป็นพื้นฐานที่ไม่มั่นคง

ในกรณีที่ไม่มีการเขียน URL ภายนอกที่ซับซ้อน (เช่นPrivoxy) wgetไม่สามารถใช้เพื่อสะท้อนไซต์ที่เก็บข้อมูล Wayback ได้อย่างน่าเชื่อถือ ในฐานะที่เป็นMPYรายละเอียดภายใต้หัวข้อ "ปัญหา 2 + โซลูชั่น" สิ่งที่มิเรอร์เครื่องมือที่คุณเลือกจะต้องช่วยให้คุณสามารถที่ไม่ใช่สกรรมกริยาดาวน์โหลดเพียง URL ที่เป็นของเว็บไซต์เป้าหมาย ตามค่าเริ่มต้นเครื่องมือทำมิเรอร์ส่วนใหญ่จะดาวน์โหลดURL ทั้งหมดที่เป็นของทั้งเว็บไซต์เป้าหมายและไซต์ที่เชื่อมโยงจากเว็บไซต์นั้นในเวลาต่อมาซึ่งในกรณีที่เลวร้ายที่สุดหมายถึง "อินเทอร์เน็ตทั้งหมด"

ตัวอย่างที่เป็นรูปธรรมอยู่ในลำดับ เมื่อทำมิเรอร์โดเมนตัวอย่างkearescue.comเครื่องมือทำมิเรอร์ของคุณต้อง :

  • รวม URL https://web.archive.org/web/*/http://kearescue.comทั้งหมดที่ตรงกับ เหล่านี้เป็นสินทรัพย์ที่ได้รับจากเว็บไซต์เป้าหมาย (เช่นhttps://web.archive.org/web/20140521010450js_/http_/kearescue.com/media/system/js/core.js)
  • ยกเว้น URL อื่นทั้งหมด เหล่านี้เป็นทรัพย์สินที่ได้จากเว็บไซต์อื่น ๆ ที่เชื่อมโยงกับจากเว็บไซต์เป้าหมาย (เช่นhttps://web.archive.org/web/20140517180436js_/https_/connect.facebook.net/en_US/all.js)

ความล้มเหลวในการยกเว้น URL ดังกล่าวมักจะดึงเข้ามาในอินเทอร์เน็ตทั้งหมดหรือส่วนใหญ่ที่เก็บถาวรในเวลาที่เว็บไซต์ถูกเก็บถาวรโดยเฉพาะอย่างยิ่งสำหรับเว็บไซต์ที่ฝังเนื้อหาที่โฮสต์จากภายนอก (เช่นวิดีโอ YouTube)

นั่นจะไม่ดี แม้ว่าwget จะมี--exclude-directoriesตัวเลือกบรรทัดคำสั่งที่ยอมรับรูปแบบ URL ที่ตรงกับรูปแบบที่ต้องการยกเว้น แต่ก็ไม่ใช่นิพจน์ปกติทั่วไปที่มีวัตถุประสงค์ พวกเขากำลัง globs ง่ายซึ่ง*ตรงกับศูนย์หรือตัวอักษรไวยากรณ์ไม่รวม /เนื่องจาก URL ที่จะยกเว้นมี/อักขระจำนวนมากโดยพลการwget จึงไม่สามารถใช้เพื่อยกเว้น URL เหล่านี้และดังนั้นจึงไม่สามารถใช้ในการทำมิเรอร์ไซต์ที่เก็บถาวร Wayback ระยะเวลา จบเรื่องที่โชคร้าย

ปัญหานี้ได้รับการบันทึกสาธารณะตั้งแต่อย่างน้อยปี 2009 มันยังไม่ได้รับการแก้ไข ต่อไป!

โซลูชันก่อนหน้า 2: Scrapbook

PrinzแนะนำScrapBookปลั๊กอิน Firefox ปลั๊กอิน Firefox

นั่นอาจเป็นสิ่งที่คุณต้องรู้ ในขณะที่ScrapBook's Filter by String...ฟังก์ชันการทำงานที่ไม่อยู่ดังกล่าว 'ปัญหา 2 + โซลูชั่น' มันไม่ได้อยู่ที่ตามมา 'ปัญหา 3 + โซลูชั่น' - คือปัญหาของการซ้ำกันภายนอก

มันน่าสงสัยหรือไม่ว่าScrapBookจะแก้ปัญหาในอดีตได้เพียงพอหรือไม่ ในฐานะที่เป็นmpyยอมรับ:

แม้ว่า Scrapbook ล้มเหลวในการคว้าไซต์อย่างสมบูรณ์ ...

การแก้ปัญหาที่ไม่น่าเชื่อถือและเรียบง่ายเกินไปคือการแก้ปัญหาที่ไม่ใช่ ต่อไป!

โซลูชันก่อนหน้า 3: wget + Privoxy

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

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

คือwget+ Privoxyคุ้มค่าดู? อย่างแน่นอน แต่ superusers ส่วนใหญ่อาจได้รับการบริการที่ดีขึ้นโดยวิธีที่ง่ายกว่าและง่ายกว่า

โซลูชั่นใหม่: httrack

Enter httrackโปรแกรมอรรถประโยชน์บรรทัดคำสั่งที่ใช้wgetฟังก์ชันการมิเรอร์ของชุดข้อมูล httrackรองรับการแยก URL ตามรูปแบบและการปรับโครงสร้างเว็บไซต์แบบง่าย อดีตแก้mpyของ "ปัญหา 2 + ทางออก"; หลัง "ปัญหา 3 + วิธีแก้ปัญหา"

ในตัวอย่างนามธรรมด้านล่างให้แทนที่:

  • ${wayback_url}โดย URL ของไดเรกทอรีระดับบนสุดที่เก็บถาวรไซต์เป้าหมายของคุณทั้งหมด (เช่น'https://web.archive.org/web/20140517175612/http://kearescue.com')
  • ${domain_name}ด้วยชื่อโดเมนเดียวกันที่มีอยู่ในการ${wayback_url}ยกเว้นส่วนนำหน้าhttp://(เช่น'kearescue.com')

ไปเลย. ติดตั้งhttrackเปิดหน้าต่างเทอร์มินัลcdไปยังไดเรกทอรีภายในเครื่องที่คุณต้องการให้ดาวน์โหลดและเรียกใช้คำสั่งต่อไปนี้:

httrack\
    ${wayback_url}\
    '-*'\
    '+*/${domain_name}/*'\
    -N1005\
    --advanced-progressinfo\
    --can-go-up-and-down\
    --display\
    --keep-alive\
    --mirror\
    --robots=0\
    --user-agent='Mozilla/5.0 (X11;U; Linux i686; en-GB; rv:1.9.1) Gecko/20090624 Ubuntu/9.04 (jaunty) Firefox/3.5'\
    --verbose

เมื่อเสร็จสิ้นไดเรกทอรีปัจจุบันควรมีหนึ่งไดเรกทอรีย่อยสำหรับแต่ละประเภทไฟล์ที่มิร์เรอร์จาก URL นั้น ซึ่งมักจะรวมถึงอย่างน้อย:

  • cssมี CSS สไตล์มิร์เรอร์ทั้งหมด
  • htmlมีหน้า HTML ที่มิเรอร์ทั้งหมด
  • jsมีจาวาสคริปต์ที่ทำมิเรอร์ทั้งหมด
  • icoมีหนึ่ง favicon ที่มิร์เรอร์

เนื่องจากhttrackภายในเขียนเนื้อหาที่ดาวน์โหลดทั้งหมดเพื่อสะท้อนโครงสร้างนี้ตอนนี้ไซต์ของคุณควรสามารถเรียกดูได้โดยไม่ต้องทำการดัดแปลง หากคุณหยุดคำสั่งข้างต้นก่อนกำหนดและต้องการดาวน์โหลดต่อให้ผนวก--continueตัวเลือกไปยังคำสั่งเดียวกันและลองอีกครั้ง

แค่นั้นแหละ. ไม่ต้องมีความขัดแย้งภายนอกการเขียน URL ผิดพลาดหรือพร็อกซีเซิร์ฟเวอร์ตามกฎ

สนุกสุดยอดเพื่อน


ฉันดีใจที่ได้ยินอย่างน้อยหนึ่งคนอ่านคำตอบของฉันอย่างละเอียด และขอขอบคุณสำหรับการวิเคราะห์เพิ่มเติมและโซลูชัน httrack ของคุณ +1
mpy

1
โซลูชัน httrack นั้นสมบูรณ์แบบขอบคุณมาก!
ChrisChinchilla

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

ในการลบขีด จำกัด อัตราการถ่ายโอนให้เพิ่มพารามิเตอร์เหล่านี้: - ปิดการใช้งานข้อ จำกัด ด้านความปลอดภัย --max-rate = 0
Oswaldo

7

น่าเสียดายที่ไม่มีคำตอบใดที่สามารถแก้ปัญหาการทำมิเรอร์สมบูรณ์จากเว็บไซต์ที่เก็บถาวรได้ (โดยไม่ต้องทำซ้ำทุกไฟล์หลายสิบครั้ง) ดังนั้นฉันจึงแฮ็ควิธีอื่นด้วยกัน การแฮ็กเป็นคำที่สำคัญเนื่องจากโซลูชันของฉันไม่ใช่โซลูชันทั่วไปหรือเป็นคำที่ง่ายมาก (อ่าน: คัดลอกและวาง) ฉันใช้Privoxy Proxy Serverเพื่อเขียนไฟล์ใหม่ทันทีขณะทำการมิเรอร์ด้วย wget

แต่ก่อนอื่นสิ่งที่ยากมากเกี่ยวกับการมิเรอร์จากWayback Machineคืออะไร?

ปัญหาที่ 1 + วิธีแก้ไข

แถบเครื่องมือ Wayback มีประโยชน์สำหรับการใช้งานแบบโต้ตอบ แต่อาจรบกวนการทำงานของระบบ ดังนั้นกำจัดมันด้วยกฎตัวกรองแบบส่วนตัว

FILTER: removewaybacktoolbar remove Wayback toolbar
s|BEGIN WAYBACK TOOLBAR INSERT.*END WAYBACK TOOLBAR INSERT|Wayback Toolbar removed|s

ปัญหาที่ 2 + วิธีแก้ไข

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

http://web.archive.org/web/ 20110722080716 /http://cst-www.nrl.navy.mil/lattice/struk/hcp.html

แต่ยัง

http://web.archive.org/web/ 20110801041529 /http://cst-www.nrl.navy.mil/lattice/struk/a_f.html

(สังเกตเห็นการประทับเวลาที่เปลี่ยนแปลงในเส้นทาง) การข้ามไป-npจะจบลงด้วยการรวบรวมข้อมูล(...)http://cst-www.nrl.navy.milและในที่สุดก็สามารถเรียกดูnavi.milไซต์ทั้งหมดได้ ฉันไม่ต้องการสิ่งนั้นอย่างแน่นอน! ดังนั้นตัวกรองนี้พยายามเลียนแบบ-npพฤติกรรมด้วยเครื่อง Wayback:

FILTER: blocknonparentpages emulate wget -np option
s|/web/([0-9].*)/http://cst-www.nrl.navy.mil/lattice/|THIS_IS_A_GOOD_$1_ADDRESS|gU
s|/web/(.*)/http(.*)([" ])|http://some.local.server/404$3|gU
s|THIS_IS_A_GOOD_(.*)_ADDRESS|/web/$1/http://cst-www.nrl.navy.mil/lattice/|gU

ฉันจะปล่อยให้มันเป็นแบบฝึกหัดที่จะขุดลงในไวยากรณ์ สิ่งที่ตัวกรองนี้จะเป็นต่อไปนี้: มันแทนที่ Wayback URL ทั้งหมดเช่นhttp://web.archive.org/web/20110801041529/http://www.nrl.navy.mil/มีhttp://some.local.server/404ตราบเท่าที่พวกเขาไม่ได้http://cst-www.nrl.navy.mil/lattice/มี

http://some.local.server/404คุณจะต้องปรับ นี่คือการส่งข้อผิดพลาด 404 เพื่อ wget อาจเป็นไปได้ว่า Privoxy สามารถทำสิ่งนั้นได้อย่างสง่างามยิ่งขึ้น อย่างไรก็ตามวิธีที่ง่ายที่สุดสำหรับฉันคือเพียงเขียนลิงค์ไปยังหน้าที่ไม่มีอยู่ในเซิร์ฟเวอร์ http ท้องถิ่นดังนั้นฉันจึงติดอยู่กับสิ่งนี้

และคุณยังต้องปรับทั้งสองปรากฏของhttp://cst-www.nrl.navy.mil/lattice/การสะท้อนให้เห็นถึงเว็บไซต์ที่คุณต้องการกระจก

ปัญหาที่ 3 + วิธีแก้ไข

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

http://web.archive.org/web/ 20110801041529 /http://cst-www.nrl.navy.mil/lattice/struk/a_f.html

แม้ว่ามันจะไม่รวมอยู่ใน20110801041529ภาพรวม มันจะนำคุณไปสู่สิ่งที่ถูกต้องโดยอัตโนมัติ :

http://web.archive.org/web/ 20110731225728 /http://cst-www.nrl.navy.mil/lattice/struk/a_f.html

ดังนั้นตัวกรอง privoxy อีกตัวที่จะเขียนสแน็ปช็อตทั้งหมดให้เป็นสแน็ปช็อตล่าสุด

FILTER: rewritewaybackstamp rewrite Wayback snapshot date
s|/([0-9]{14})(.{0,3})/|/20120713212803$2/|g

อย่างมีประสิทธิภาพทุก ๆ 14- หมายเลข - ตัวเลขในสิ่งที่/.../ถูกแทนที่ด้วย20120713212803(ปรับให้เป็นภาพรวมล่าสุดของเว็บไซต์ที่คุณต้องการ) นี่อาจเป็นปัญหาหากมีตัวเลขดังกล่าวในโครงสร้างเว็บไซต์ที่ไม่ได้มาจากเครื่อง Wayback ไม่สมบูรณ์แบบ แต่ใช้ได้สำหรับไซต์Strukturtypen

สิ่งที่ดีเกี่ยวนั่นคือ wget ละเว้นสถานที่ใหม่มันถูกเปลี่ยนเส้นทางไปและบันทึกไฟล์ - ใน exampe ข้างต้น - web.archive.org/web/20110801041529/http://cst-www.nrl.navy.mil/lattice/struk/a_f.htmlเป็น

ใช้ wget เพื่อสะท้อนไซต์ที่เก็บถาวร

ดังนั้นในที่สุดเมื่อuser.filterเปิดใช้ฟิลเตอร์ privoxy (กำหนดไว้ใน) user.actionผ่านทาง

{ +filter{removewaybacktoolbar} +filter{blocknonparentpages} +filter{rewritewaybackstamp} }
web.archive.org

คุณสามารถใช้ wget ได้ตามปกติ อย่าลืมบอกให้คนอื่นใช้พร็อกซี่ด้วย:

export http_proxy="localhost:8118"
wget -r -p -k -e robots=off http://web.archive.org/web/20120713212803/http://cst-www.nrl.navy.mil/lattice/index.html

ฉันใช้ตัวเลือกเหล่านี้ แต่-mควรใช้งานได้เช่นกัน คุณจะจบลงด้วยโฟลเดอร์

20120713212803
20120713212803cs_
20120713212803im_
20120713212803js_

ในขณะที่เครื่อง Wayback แยกรูปภาพ ( im_), สไตล์ชีท ( cs_) ฯลฯ ฉันรวมทุกอย่างเข้าด้วยกันและใช้เวทมนต์บางอย่างเพื่อแทนที่ลิงก์ที่น่าเกลียด ( ../../../../20120713212803js_/http:/cst-www.nrl.navy.mil/lattice) ตามลำดับ แต่นี่ไม่จำเป็นจริงๆ


1
นี่คือคำตอบที่ทรงคุณค่า ผ่าที่แม่นยำของคุณของโครงสร้างเว็บไซต์ภายใน Wayback เครื่องเป็นกุญแจสำคัญในการHTTrackแก้ปัญหาชั่นฉันที่สุดสะดุด คุณร็อค mpy
เซซิลแกงกะหรี่

5

wget

- page-requisites
ตัวเลือกนี้ทำให้ Wget ดาวน์โหลดไฟล์ทั้งหมดที่จำเป็นในการแสดงหน้า HTML ที่ถูกต้อง ซึ่งรวมถึงสิ่งต่าง ๆ เช่นรูปภาพอินไลน์เสียงและสไตล์ชีทที่อ้างอิง

โดยปกติเมื่อดาวน์โหลดหน้า HTML หน้าเดียวเอกสารที่จำเป็นใด ๆ ที่อาจจำเป็นต้องแสดงอย่างถูกต้องจะไม่ถูกดาวน์โหลด การใช้ -r พร้อมกับ -l สามารถช่วยได้ แต่เนื่องจาก Wget ไม่ได้แยกความแตกต่างระหว่างเอกสารภายนอกและเอกสารอินไลน์โดยทั่วไปหนึ่งเอกสารจะเหลือด้วย "เอกสารใบ" ที่ขาดสิ่งที่จำเป็นต้องมี

ตัวอย่างเช่นสมมติว่าเอกสาร 1.html มีแท็ก "" อ้างอิงถึง 1.gif และแท็ก "" ที่ชี้ไปที่เอกสารภายนอก 2.html สมมติว่า 2.html คล้ายกัน แต่ภาพนั้นเป็น 2.gif และเชื่อมโยงกับ 3.html สมมติว่าสิ่งนี้ยังคงดำเนินต่อไปจนถึงจำนวนที่สูงตามอำเภอใจ

-m
--mirror

เปิดตัวเลือกที่เหมาะสมสำหรับการมิเรอร์ ตัวเลือกนี้จะเปิดการสอบถามซ้ำและกำหนดเวลาตั้งค่าความลึกการสอบถามซ้ำแบบไม่สิ้นสุดและเก็บรายชื่อไดเรกทอรี FTP ปัจจุบันเทียบเท่ากับ -r -N -l inf - no-remove-listing

โปรดทราบว่า Wget จะทำงานเหมือนกับว่าได้ระบุ -r ไว้ แต่จะดาวน์โหลดเฉพาะหน้าเดียวและสิ่งที่ต้องการ ลิงค์จากหน้านั้นไปยังเอกสารภายนอกจะไม่ถูกติดตาม ที่จริงแล้วเพื่อดาวน์โหลดหน้าเดียวและข้อกำหนดทั้งหมดของมัน (แม้ว่าจะมีอยู่ในเว็บไซต์ที่แยกต่างหาก) และตรวจสอบให้แน่ใจว่าล็อตนั้นแสดงขึ้นอย่างถูกต้องในพื้นที่ผู้เขียนคนนี้ชอบใช้ตัวเลือกเพิ่มเติมนอกเหนือจาก -p:

wget -E -H -k -K -p http://<site>/<document>

ดังนั้นwget -E -H -k -K -p http://web.archive.org/web/20110722080716/http://cst-www.nrl.navy.mil/lattice จะเป็นชุดที่ดีที่สุดสำหรับคุณ แต่ฉันขอแนะนำเครื่องมืออื่นfirefoxส่วนขยายscrapbook

เรื่องที่สนใจ

ScrapBook เป็นส่วนเสริมของ Firefox ซึ่งช่วยให้คุณบันทึกเว็บเพจและจัดการคอลเลกชันได้อย่างง่ายดาย คุณสมบัติที่สำคัญคือความสว่างความเร็วความแม่นยำและการสนับสนุนหลายภาษา คุณสมบัติที่สำคัญคือ:
* บันทึกหน้าเว็บ
* บันทึกตัวอย่างของหน้าเว็บ
* บันทึกเว็บไซต์
* จัดระเบียบคอลเลกชันในลักษณะเดียวกับที่คั่นหน้า
* ค้นหาข้อความแบบเต็มและค้นหาตัวกรองอย่างรวดเร็วของคอลเลกชัน
* แก้ไขหน้าเว็บที่รวบรวม
* ข้อความ / HTML คุณสมบัติการแก้ไขคล้ายกับหมายเหตุของ Opera

วิธีทำมิเรอร์ไซต์
ติดตั้งscrapbook และรีสตาร์ท firefox

  1. โหลดหน้าเว็บในเบราว์เซอร์ [หน้าเว็บที่จะทำมิเรอร์]
  2. คลิกขวาที่หน้า -> บันทึกหน้าเป็น ...
  3. เลือกระดับจากบันทึกเชิงลึก และกดบันทึก ป้อนคำอธิบายรูปภาพที่นี่
  4. เลือกRestrict to Drirectory/ Domainจากตัวกรอง
    ป้อนคำอธิบายรูปภาพที่นี่

รอให้การทำมิเรอร์เสร็จสมบูรณ์ หลังจากมิเรอร์คุณสามารถเข้าถึงเว็บไซต์ออฟไลน์ได้จากScrapBookเมนู


แม้ว่า Scrapbook จะล้มเหลวในการคว้าไซต์โดยสมบูรณ์ แต่ก็ใกล้เคียงกับทางออกที่เป็นไปได้มากกว่าคำแนะนำอื่น ๆ โดยเฉพาะอย่างยิ่งตัวเลือกตัวกรองตามสตริง ...มีประโยชน์มากกว่าการกรองตามโฮสต์ / โดเมน ดังนั้นฉันได้รับรางวัลเงินรางวัลให้กับคุณ:)
mpy

0

ระวังด้วยคำสั่งด้านล่างเพราะมันคว้ามาก 1 หลังจาก 'l' บอกให้จับทุกหน้าเพื่อหาลิงก์ในไซต์ที่มีความลึกระดับ 1 หากคุณต้องการให้แมงมุมเปลี่ยนสิ่งนี้ให้ลึกซึ้งยิ่งขึ้นเป็น 2 แต่มันอาจไม่มีวันจบเพราะมันอาจติดอยู่ในวง

wget -rHpkl 1 -e robots=off http://www.example.com/

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

ใช้-D www.examle.com,www.another.example.comเพื่ออนุญาตเฉพาะโดเมนที่คุณต้องการหรือใช้--exclude-domains www.examle.com,www.another.example.com เพื่อทำรายการที่ไม่ต้องการ


ขอบคุณ แต่ปัญหาของ white / blacklisting คือเว็บไซต์ทั้งหมดที่เก็บถาวรมาจากweb.archive.orgโฮสต์ ฉันต้องการสะท้อนทุกสิ่งที่wget -npจะสะท้อนเมื่อไซต์ดั้งเดิมยังคงออนไลน์อยู่ -lไม่ได้ช่วยอะไรมากเนื่องจากจะต้องเพิ่มเป็น 3 หรือ 4 จึงทำให้ลำดับชั้นของเว็บไซต์มากเกินไป
mpy

0

รูปแบบของ URL สำหรับ Internet Archive รวมถึงวันที่และเวลาที่เว็บไซต์ถูกเก็บถาวร เพื่อประหยัดสินทรัพย์พื้นที่ที่ไม่ได้เปลี่ยนจะถูกลิงค์กลับไปยังเว็บไซต์รุ่นก่อนหน้า

ตัวอย่างเช่นใน url http://web.archive.org/web/20000229123340/http://www.yahoo.com/วันที่ที่มีการรวบรวมข้อมูลเว็บไซต์คือ 29 ก.พ. 2000 เวลา 12:33 และ 40 วินาที

ดังนั้นเพื่อให้ทุกคนhttp://web.archive.org/web/20110722080716/http://cst-www.nrl.navy.mil/lattice/ต้องเริ่มต้นจากนั้นก็คว้าทรัพย์สินที่เชื่อมโยงทั้งหมดมาhttp://web.archive.org/web/*/http://cst-www.nrl.navy.mil/lattice/ด้วย


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

0

มีเครื่องมือที่ทำได้ดีกว่า:

wayback_machine_downloader domain.org 

ในการรับมันคุณจะต้องติดตั้งทับทิม แล้ว:

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