כיצד לארכז אתרי אינטרנט במערכות כמו יוניקס?

Wget היא תוכנית שיכולה להוריד תוכן מהאינטרנט ונכללת כברירת מחדל במערכות רבות כמו יוניקס
Wget היא תוכנית שיכולה להוריד תוכן מהאינטרנט ונכללת כברירת מחדל במערכות רבות כמו יוניקס.

ריקבון קישורים (התופעה שבה אתרים ודפים ישנים נעלמים, מה שהופך קישורים לחסרי תועלת) הוא בעיה ענקית באינטרנט. עבור הקוראים, זה מאכזב כאשר אתרים ישנים כבר לא קיימים. לסופרים שכתיבתם באינטרנט מקושרת בהרחבה, קיימת הבעיה שלא יוכלו לאמת מידע כאשר קישורים מתים. לא משנה מה המוטיבציה, חשוב שתוכלו לאחסן מידע באינטרנט.

צעדים

  1. 1
    הבן את המניעים שלך לארכיון האתר. חשוב לדעת מה אתה מנסה לעשות בארכיון האתר.
    • ישנן מספר סיבות שאולי תרצה לארכז אתר, ואלה משפיעות על האסטרטגיה שלך:
      • אולי רק תרצה ארכיון של האתר להתקיים, מבלי שתדאג בהכרח מי מתחזק אותו. אם זה המקרה, עיין בשלב "בדוק אם ישנם ארכיונים אחרונים של האתר."
      • כדאי לשמור על עותק אישי (כלומר להחזיק את הארכיון באופן מקומי). זה יכול להיות המקרה אם אינך יכול לסמוך על אחרים שישמרו ארכיונים באופן מקוון (למשל אם תוכן האתר מוגן בזכויות יוצרים או לא חוקי, ייתכן שהוא כפוף להסרות, ובמקרה זה בטוח יותר שיהיו עותקים מקומיים).
      • ייתכן שתרצה רק את תמונת המצב של האתר בנקודת זמן מסוימת. זה יכול להיות המקרה אם אתה כותב משהו ורוצה שהציטוטים שלך יהיו עמידים; אתה יכול פשוט לצלם תמונת מצב של האתר בזמן בו השתמשת באתר כמשאב.
      • ייתכן שתרצה ליצור תמונות מתמדות של האתר. זה יכול להיות המקרה אם יש לך אובססיה לא ראויה לתוכן האתר או לבעליו.
      • ייתכן שתרצה רק חלקים מהאתר (למשל הדפים שאתה מצטט).
    • שים לב שהנקודות שלעיל אינן בלעדיות זו לזו (אם כי חלקן סותרות, כמו לרצות חלקים באתר לעומת האתר כולו); במילים אחרות, ייתכן שתרצה שמישהו יקיים ארכיון, שאתה בעצמך ישמור ארכיון ושהצילומים הרציפים ייווצרו, הכל בו זמנית.
  2. 2
    שקול לפנות לבעלי האתרים כדי להשיג זבל. יתכן שבעלי האתרים יתחייבו על ידי כך למשל לתת להם את הגיבויים שלהם לאתר. עם זאת, זכור כי הדבר יהפוך להם שקוף לכוונותיך, כך שהם עשויים להגיב בצורה שלילית (למשל באמצעות חלקים שמגנים באמצעות סיסמה באתר).
  3. 3
    בדוק אם קיימים ארכיונים אחרונים של האתר. חשוב לזכור כי ביצוע עבודה אינו בעל ערך מטבעו; להאמין כך יהיה לבצע את ההטיה של ביצוע העבודה. ארכיב אתרי אינטרנט גדולים יכול לעתים קרובות לקחת הרבה זמן ומאמץ. אם מישהו אחר כבר עשה עבורך את עיקר העבודה, אז אין צורך להרגיש נאלץ לחזור על המשימה מחדש.
    • אם מישהו אחר עשה גיבוי לאחרונה של האתר, ייתכן שתסיים (אם רק היית רוצה שמישהו אחר יהיה עותק) או קרוב לביצוע (אם אתה רק רוצה תמונת מצב מקומית אחת; המשימה שלך מצטמצמת לשיקוף. את הגיבוי שלהם, וזה כנראה קל משמעותית מהמטלה המקורית).
    • ישנם מספר מקומות שצריך לבדוק לפני שתמשיך עם פתרון הארכיון האישי שלך (המוצג בשאר השלבים):
    בוויקי שלהם יש מידע על מגוון אתרי אינטרנט וההתקדמות שחלה בארכיב אותם
    בוויקי שלהם יש מידע על מגוון אתרי אינטרנט וההתקדמות שחלה בארכיב אותם.
  4. 4
    בדוק אם יש כלים מיוחדים להורדת האתר. לעיתים ישנם כלים מיוחדים להורדת תוכן מסוים. לדוגמה, אם אתה רוצה להוריד סרטוני YouTube רבים, יש כלי שנקרא youtube-dl. באתרים רבים יש גם API (ממשק תכנות יישומים) המאפשר לך לגשת לתכנות בקלות בתכנות. זה המקרה למשל עם reddit, שכ- API מתועד היטב (אם כי שימו לב שכבר קיים ארכיון מקיף למדי של reddit, שנוצר בעצמו באמצעות ה- API של reddit).
  5. 5
    בדוק אם לאתר יש מגבלה למספר בקשות שאתה יכול להגיש בפרק זמן מסוים. אם אף אחד אחר לא גנז את האתר לאחרונה ואם אין כלים מיוחדים לארכיון האתר, אתה לבד. נהוג להבין אם לאתר שאליו אתה מכוון יש כללים מיוחדים לגבי כמה או כמה מהר אתה יכול להוריד תוכן. באתרים רבים יש כללים מוגדרים בבירור, אשר מופיעים לעתים קרובות תחת תנאי השירות / השימוש שלהם. גם אם לא אכפת לך באופן אישי אם האתר רוצה להגביל את הגישה שלך, זה עדיין טוב לזכור, מכיוון שאולי יש בהם איסור IP אוטומטי (ואמצעים אחרים) כדי למנוע מאנשים להעמיס על השרתים שלהם או "לגנוב "התוכן שלהם.
    • עיין בשלב "השתמש במספר מחשבים או כתובות IP כדי להאיץ את הארכיון" לקבלת דרכים לעקוף מגבלה זו.
  6. 6
    נסה להריץ פקודת wget באתר. Wget היא תוכנית שיכולה להוריד תוכן מהאינטרנט ונכללת כברירת מחדל במערכות רבות כמו יוניקס. לפעמים, פקודת wget אחת יכולה להוריד את כל האתר או את רובו. אם זה המקרה, המשימה הופכת לטריוויאלית. עם זאת, עדיין חשוב להתחיל את הסריקה בדף שעשוי לקשר לדפים רבים אחרים, מכיוון ש- wget מתחיל בדף הפתיחה (המכונה "הזרע") ועוקב באופן רקורטיבי אחר קישורים פנימיים. איתור דף מפת האתר הוא אידיאלי, אם באתר יש כזה.
    • הנה פקודה לדוגמה עם דגלים שימושיים רבים מופעלים:
      wget - מראה - דרישות לדף \ - התאמת הרחבה - קישורי המרה \ - המתן = 1 - המתנה אקראית - ללא סתימה \ -e רובוטים = כבוי \ http://example.com/sitemap.html 
    • הקפד לשנות את http://example.com/sitemap.html וכן את כל הדגלים שיתאימו לצרכים שלך. להלן משמעויות הדגלים, אם כי עליכם לעיין גם בתיעוד הרשמי של wget (או info wget) וכן במדריך שלו (סוג man wget):
        • - mirror מפעיל מספר אפשרויות חיוביות לשיקוף האתר, כולל קישורים רקורטיביים.
        • - page-requisites הופך wget להוריד תמונות, גיליונות סגנונות וקבצים אחרים המסייעים להפיק מראה נאמן למקור.
        • - adjust-extensionמוסיף את הסיומת .htmlלקבצי HTML כדי להקל עליהם את הגלישה המקומית.
        • - convert-links משנה קישור בקבצים שהורדו כך שהם מתאימים לגלישה מקומית.
        • - wait=1 מכריח את wget להמתין שנייה אחת בין הבקשה לבקשה (עם זאת, ראה גם את האפשרות הבאה).
        • - random-waitמכפיל באופן אקראי את הקבוע - waitעבור כל בקשה כך שתבנית ההורדה תהיה פחות חשודה; זה מתקבל על דעת מסייע במניעה היותו IP מוחרם.
        • - no-clobberישמור עותקים מקומיים של קובץ במקום להחליף או להוריד עותקים חדשים. יש לקחת בחשבון אם ההורדה הופסקה באמצע.
        • -e robots=offמכבה את הציות robots.txtלקובץ האתר. יש אנשים שרואים את זה מכובד לעקוב אחר הכללים robots.txt, אבל לפעמים אתרים שלמים אינם נכללים על ידי robots.txt(אם הבעלים מנסים Disallow: /). ארכיטקטאם, למשל, רואה robots.txt"מכתב התאבדות" ומתעלם ממנו.
      • שקול גם להשתמש באפשרויות הבאות:
        • - user-agent='Mozilla/5,0 Firefox/40,0'יגדיר כי סוכן המשתמשים שלך יראה כאילו אתה משתמש ב- Firefox לגישה לאתר. זה שימושי מכיוון שיש אתרים שאינם מאפשרים סוכני משתמשים דומים לסורק או שמציגים דפים שונים בהתאם לסוכן המשתמש.
        • - restrict-file-names=nocontrolימנע מ- wget לגעת בתווים מיוחדים בכתובת האתר. זה לעתים קרובות שימושי אם אתה מוריד מאתר עם שמות קבצים המכילים תווי Unicode רבים.
      • cURL הוא כלי עזר דומה ל- wget בעל תכונות דומות. ב- Mac OS X ובמערכות BSD רבות, cURL הוא הורדת ברירת המחדל במקום wget. יתכן שתהיה מעוניין למצוא תוכניות אחרות המיועדות לשיקוף אתרים, כגון HTTrack.
  7. 7
    בחן את האתר כדי לראות אם יש בו דפוסים או מבנים. אם לא ניתן לשקף אתר בקלות באמצעות wget (או כלי עזר דומה), הגיע הזמן לאסטרטגיה אחרת. באתרים רבים, כגון פורומים באינטרנט, יש דפוסים מפורשים בכתובת האתר, כגון שרשורים ממוספרים.
    • אם ניקח דוגמא, נוכל להסתכל על AutoAdmit, לוח דיונים ידוע לשמצה. לאחד השרשורים באתר יש את כתובת האתר http://autoadmit.com/thread.php?thread_id=2993725&mc=12&forum_id=2. עם זאת, אנו עשויים להבחין כי המספר המכריע היחיד כאן הוא thread_id; אכן, ניווט אל http://autoadmit.com/thread.php?thread_id=2993725 מציג דף זהה במהותו. אנו עשויים כעת לנסות להסיק כי מבנה ה- URL של הכניסה האוטומטית הכללית נמצא http://autoadmit.com/thread.php?thread_id=N, כאשר N הוא מספר כלשהו; מנסה מספר כתובות אתרים שהן מופעים של דפוס כללי זה זה. אחרי זה, זה לולש דרך כל השרשורים ולהוריד אותם; בבאש:
      עבור אני ב {1. 0,2993725} בצע wget -A 'Mozilla / 5,0 Firefox / 40,0' \ "http://xoxohth.com/thread.php?thread_id=$i" שינה 0.3s נעשה 
    • כמובן שמבנה ה- URL של AutoAdmit הוא אחד הפשוטים ביותר. אתרים אחרים, כמו בלוגים של וורדפרס, עשויים לדרוש למשל לגלוש בין דפי הארכיון לאחר חישוב כמה דפי פוסטים בכל חודש (אם כי גם בלוגים של וורדפרס נוטים להתאים לסריקה נאיבית). אין דרך כללית לעשות זאת, אז אתה יכול להיות לבד; חיפוש סביב בגוגל יכול לעיתים קרובות להועיל מאוד.
    ריקבון קישורים (התופעה שבה אתרים ודפים ישנים נעלמים
    ריקבון קישורים (התופעה שבה אתרים ודפים ישנים נעלמים, מה שהופך קישורים לחסרי תועלת) הוא בעיה ענקית באינטרנט.
  8. 8
    שקול טכניקות מתקדמות יותר או מייגעות יותר להורדת האתר אם יש בו הרבה JavaScript. בתקופה האחרונה, הרשת עברה יותר ויותר לעבר שימוש כבד ב- JavaScript ואלמנטים אינטראקטיביים אחרים (המכונים לפעמים תסריט DOM). בעוד שהשינוי הזה איפשר לרשת " להתחרות ביישומים מקוריים ללא הורדה ראשונית כבדה, ללא תהליך התקנה, ולעשות זאת במכשירים ישנים וחדשים", היא עדיין נושא ללעג ולביקורת. מבחינת ארכיון אתרי אינטרנט, JavaScript ואלמנטים אינטראקטיביים הם כמעט תמיד חדשות רעות. ישנן מספר אסטרטגיות של ניסיון להתמודד עם ארכיון של אתר כבד JavaScript.
    • גישה אחת היא לנסות להימנע לחלוטין מ- JavaScript. אתרים רבים מעמידים לרשותך עדכוני RSS או Atom בהם הקוראים יכולים להשתמש כדי לעמוד בתוכן חדש. עבור ארכיונים, עדכוני אינטרנט שימושיים מכיוון שמדובר ב- XML סטטי, מה שמקל על ההורדה והעיבוד. זה שימושי במיוחד אם ברצונך להמשיך ליצור תמונות של האתר: פשוט עקוב אחר העדכונים הרלוונטיים ויהיה לך באופן אוטומטי את מה שאתה רוצה (אם יתמזל מזלך; אתרים רבים מציגים תצוגה מקדימה של עדכונים בלבד, או שהמחברים עשויים לערוך את התוכן לאחר מכן. וכו ', מה שמסבך את העניינים). אזהרה כאן היא שרוב עדכוני האינטרנט מכילים רק את מספר הפוסטים או המאמרים החדשים ביותר, ולכן ייתכן שלא ניתן יהיה לאחסן ארכיון באתר באופן רטרואקטיבי.
    • דברים אחרים לבחון:
      • JavaScript בדפדפן כדי ללחוץ אוטומטית על אלמנטים
      • PhantomJS ודפדפנים אחרים ללא ראש
      • אתרים משנים לעתים קרובות את ממשק המשתמש שלהם כך שהקצב יכול להיות קשה
  9. 9
    ייצא קובצי Cookie, אם אתר מוגן באמצעות סיסמא או דורש אימות אחר. אתרים הדורשים אימות הם מסובכים לגישה באמצעות כלים כמו wget. עם זאת, ניתן לייצא עוגיות מדפדפנים גרפיים כמו Firefox, ואז להשתמש בעוגיות כדי לגשת לאתרים ב- wget.
  10. 10
    השתמש במספר מחשבים או כתובות IP כדי להאיץ את הארכיון. אם אתר יכול לאתר במהירות יחסית סורקים ולאסור אותם, אפשרות אחת (מלבד האטה) היא להתחבר לאתר באמצעות כתובות IP מרובות. ישנן מספר דרכים לעשות זאת; להלן שתיים: צורה אחת פשוטה של מספר כתובות IP היא לשנות את המיקום הפיזי שלך על ידי ביקור למשל בכמה בתי קפה או ספריות; בכל מיקום חדש תהיה לך כתובת IP חדשה שאפשר להוריד מהאתר. אפשרות נוספת היא להשיג גישה למספר מחשבים, על ידי למשל רכישת גישה לשרתים פרטיים וירטואליים. יתרון באפשרות האחרונה הוא שניתן לקבל מספר כתובות IP שיכולות להוריד בו זמנית, מה שיאיץ את תהליך ההורדה במקום פשוט לאפשר לך להמשיך בהורדה. עם זאת, שים לב שהאפשרות האחרונה כוללת לעתים קרובות הוצאות כסף, אם כי זה יכול להיות נמוך עד 11 € לשנה. צורת ההורדה האחרונה היא בנוסף לחוקיות מוטלת בספק.
    • אפשר גם להשתמש ברשת האנונימיות Tor כדי לשנות את ה- IP שלך ללא הרף על ידי שינוי צמתי יציאה. עם זאת, מאוד מיואש להתעלל בטור בדרך זו.
  11. 11
    אוטומטי ככל האפשר. אם אתה מצפה להמשיך ליצור ארכיונים של האתר או אם אתר היעד הוא עצום, אז חשוב מאוד להפוך כמה שיותר מהתהליך לאוטומטי.
    לכן חשוב לשקול לאמוד מראש כמה גדול הארכיון יהיה בסופו של דבר ולנקוט בצעדים כדי למזער את גודל הארכיון על ידי
    לכן חשוב לשקול לאמוד מראש כמה גדול הארכיון יהיה בסופו של דבר ולנקוט בצעדים כדי למזער את גודל הארכיון על ידי דחיסת קבצים.
  12. 12
    שקול לשחרר את הארכיונים שלך. ישנן מספר סיבות שתרצה לשחרר את הארכיונים שלך לציבור. ראשית, עברתם כעת זמן רב של ארכיון האתר; אם אחרים רוצים גם עותקים מקומיים, סביר להניח שהם ישמחו לגלות שמישהו אחר עשה את העבודה עבורם. בנוסף, "המון עותקים שומרים על דברים", כך שאפשר לאחרים לשקף את הארכיונים שלך מבטיח שהוא בטוח יותר מפני איומים כמו כשל בדיסק. ראה למשל את דף ההעלאה של ארכיון האינטרנט למידע נוסף.

אזהרות

  • בחלק מהאתרים יש קישורים מיוחדים שנועדו להיות "סירי דבש" לבוטים. אלה מגיעים בכמה צורות, אך הם בדרך כלל קישורים מוסווים כך שמשתמשים רגילים באתר לא לוחצים עליהם, אלא כאלה שסורק שעוקב אחרי כל הקישורים באופן רקורסיבי. סוג אחד של כלי דבש יציג רשימה של אנשים שילחצו על קישור מסוים, בעוד שאחרים יטעות את הסורק בעקבות לולאה אינסופית (נקראת גם מלכודת עכביש).
  • היזהר מאתרים המקשרים לקישורי שאילתות שונים, כך שתוכל בסופו של דבר לקבל, למשל, עותקים מרובים של אותו דף הממוינים בצורה שונה או באמצעות שאילתות שונות.
  • אתרים מסוימים מיישמים את Captchas, מה שמקשה מאוד על הארכיון. אם אתה צריך לפתור הרבה CAPTCHAs, שקול לנסות להקים פותר או לשלם לאנשים שיפתור אותם בשבילך (ישנם שירותים מקוונים לכך). אולם פעולה זו אינה מתחום המדריך הזה.
    חשוב שתוכלו לאחסן מידע באינטרנט
    לא משנה מה המוטיבציה, חשוב שתוכלו לאחסן מידע באינטרנט.
  • אתה עלול להיתקל בבעיות רשת בבית אם אתה מוריד יותר מדי.
  • אתה עלול גם לגרום לבעיות באתר שאתה מכוון אליו (ואולי אפילו להפיל אותו) אם אתה מוריד יותר מדי או מהר מדי. זוהי בעיה במיוחד אם אתה משתמש בשיטות מפוקפקות יותר כמו שימוש במחשבים מרובים לביצוע הורדות או שלא בצע את המגבלות המוצעות להורדה.
  • יש אתרים גדולים ממה שנראה בתחילה. בעיה אחת שאתה עלול להיתקל בה היא אזלת שטח הדיסק במחשב שלך. לכן חשוב לשקול לאמוד מראש כמה גדול הארכיון יהיה בסופו של דבר ולנקוט בצעדים כדי למזער את גודל הארכיון על ידי דחיסת קבצים.

    הגודל הממוצע של דפי האינטרנט גדל בהתמדה, והגודל הממוצע היה 1600 קילו-בייט ביולי 2014. כמובן, אם אתה מכוון לאתר ספציפי, גדלי הדפים באתר זה עשויים לחרוג משמעותית מהנתון שצוין למעלה. לכן כדאי להסתכל מקרוב על האתר הספציפי שבידינו. בדפדפן Firefox, אתה יכול ללחוץ על Ctrl- Shift- qכדי להעלות את צג הרשת; לאחר מכן תוכל ללחוץ על "טען מחדש" כדי לטעון מחדש את הדף, ולאחר מכן תוכל לראות את גודל העברת הרשת הכולל. (לדפדפנים אחרים עשויה להיות פונקציונליות דומה.) פעולה זו למספר עמודים תתן לך מושג טוב כמה מקום יתפוס עמודים בודדים. המידע החשוב הנוסף הוא המספר הכולל של העמודים שמצפים להוריד, וזה גם תלוי רבות באתר. בלוגים רבים למשל מפרטים את מספר הפוסטים לכל חודש, ולכן סיכום אלה ייתן רעיון טוב; עבור אתרים מורכבים יותר, זה קשה יותר.

    • באשר לדחיסת קבצים, תוכניות להעתקת כפילויות נתונים כמו bup הן מצוינות במיוחד אם ברצונך להמשיך ליצור תמונות של האתר ללא הגבלת זמן. אפילו פשוט באמצעות תוכניות דחיסת קבצים כמו xz יכול לחתוך באופן משמעותי את שטח הדיסק מכיוון שאתרים רבים נוטים להכיל הרבה טקסט, שנדחס היטב. אולי אפילו תרצה לכתוב סקריפט שמסנן את תבנית האתר כך שתישאר רק עם התוכן. תסריט כזה קיים עבור Quora, כדי לתת דוגמה אחת.
FacebookTwitterInstagramPinterestLinkedInGoogle+YoutubeRedditDribbbleBehanceGithubCodePenWhatsappEmail