برچسب: wget

  • کپی یک وب‌سایت با کمک wget

    دستور wget یکی از انعطاف‌پذیرترین دستورات در محیط ترمینال لینوکس می‌باشد و البته ابزاری بسیار محبوب برای دانلود . وقی شما از این دستور بدون هیچ آرگومانی استفاده می‌کنید فقط قادر به دانلود یک فایل از روی سرور هستید.  در حالی که قدرتی بسیار بیشتر از ین رو دارا می‌باشه و دارای خصوصیت‌های مفیدی هستش.
    یکی از خصوصیت های پیشرفته‌ی wget خاصیت mirror اونه . این ویژگی به شما اجازه‌ی ساختن یک وبسایت به صورت محلی بر روی کامپیوتر رو می‌ده . فایل‌های دانلودی وب‌سایت شامل تمام استایل‌ها ، تصاویر و همینطور فایل‌های دیگه می‌با‌شه . تمام لینک‌های داخلی یک وب‌سایت دنبال می‌شن و همونطور که در مبدا وجود دارن ، بر روی کامپیوتر شما هم ذخیره خواهند شد ، تا زمانی که شما یک کپی کامل از آن وب‌سایت را در اختیار داشته باشید.

    در حالت ابتدایی شما فقط باید از آرگومان mirror استفاده کنید . mirror بدین معنی هستش که شما می‌تونید آینه‌ی یک سایت رو (یعنی خود سایت) بر روی کامپیوتر ذخیره کنید.

    $ wget -m http://www.example.com/

    با این وجود چندین ارگومان دیگه هست که شما باید به اون اضافه کنید و کار اون رو تکمیل کنید.
    این دستور به تنهایی خیلی مناسب گشت‌و‌گذار در سایت بر روی کامپیوترنیست ! چرا که با این دستور هنوز لینک‌های داخل صفحات ، هنوز به آدرس‌های حقیقی خود اشاره می‌کنند نه فایل‌های دانلودی شما بر روی کامپیوتر که طبیعیه در این حالت شما برای گشت زنی در یک سایت باید به اینترنت متصل باشید !‌ معنی این حرف اینه که شما برای دیدن اون صفحات باید خودتون تکی‌تکی دنبالشون بر روی کامپیوتر بگردید ! که این موضوع اصلا خوب نیست .

    برای درست کردن این موضوع ، شما می‌توانید  آرگومان -k را به دستور بالا اضافه کنید .

    $ wget -mk http://www.example.com/

    با این دستور شما کافیه بر روی صفحه‌ی اصلی سایت کلیک کنید و از همون صفحه به  تمام قسمت‌های دیگر مراجعه کنید .
    در بعضی از سایت‌ها شما ممکنه با کمبود پهنای‌باند از طرف سایت مراجعه بشین . برای حل این مشکل  wget  را وادار به دانلود سایت با وقفه ۵ ثانیه یا هر ۱ ساعت  می کنیم!

    $ wget -mk -w 20 http://www.example.com/

    شما به جای اون عدد می‌تونید هر مقدار دیگه رو هم استفاده کنید و هم اینکه  حرف m به معنی دقیقه و یا h به معنای ساعت و یا d به معنی روز رو هم اضافه کنید.