Wget هو أداة قوية سطر أوامر لتنزيل الملفات من الويب. يدعم بروتوكولات متنوعة، بما في ذلك HTTP و HTTPS و FTP، مما يجعله أداة متعددة الاستخدامات للمطورين ومديري النظام.
في هذا الدليل الشامل، سأقدم لك تعليمات مفصلة حول كيفية تثبيت Wget على Windows و macOS و Linux، بالإضافة إلى أوامر نموذجية لتبدأ. بالإضافة إلى ذلك، سأغطي بعض سيناريوهات الاستخدام المتقدمة، ونصائح استكشاف الأخطاء، وأفضل الممارسات لاستخدام Wget بشكل فعال. علاوة على ذلك، سأناقش كيف يمكن أن يعزز دمج Wget مع أدوات مثل Apidog إدارة API وعمليات التنزيل لديك.
ما هو Wget؟
Wget هو حزمة برامج مجانية لاسترداد الملفات باستخدام بروتوكولات HTTP و HTTPS و FTP. إنه جزء من مشروع GNU ومصمم ليكون قويًا، مما يسمح للمستخدمين بتنزيل الملفات بطريقة موثوقة. يمكن أن يتعامل Wget مع اتصالات الشبكة البطيئة أو غير المستقرة، مما يجعله خيارًا مثاليًا لتنزيل الملفات الكبيرة أو عكس مواقع الويب بالكامل.
الميزات الرئيسية لـ Wget
- تنزيلات متكررة: يمكن لـ Wget تنزيل دليل كامل أو مواقع ويب من خلال متابعة الروابط بشكل متكرر. هذه الميزة مفيدة بشكل خاص لإنشاء النسخ الاحتياطية أو عكس مواقع الويب.
- استئناف التنزيلات: إذا تم مقاطعة التنزيل، يمكن لـ Wget استئنافه من النقطة التي توقف عندها. هذا مفيد للملفات الكبيرة أو الاتصالات غير الموثوقة.
- دعم الوكيل: يمكن لـ Wget العمل من خلال بروكسي HTTP و FTP، مما يجعله مناسبًا لمختلف تكوينات الشبكة.
- تخصيص User-Agent: يمكن للمستخدمين ضبط سلاسل User-Agent مخصصة لتقليد متصفحات أو تطبيقات مختلفة، مما قد يكون مفيدًا عند الوصول إلى مواقع الويب التي تقيد بعض عوامل المستخدمين.
- تحديد معدل التنزيل: يتيح لـ Wget للمستخدمين تحديد سرعة التنزيل، مما يمكن أن يكون مفيدًا لتوفير النطاق الترددي أثناء التنزيلات الكبيرة.
دمج Apidog مع Wget
بينما يعد Wget أداة ممتازة لتنزيل الملفات، يمكن أن يعمل الدمج مع Apidog على تسريع تدفق عملك، خاصة عند التعامل مع APIs. Apidog هو منصة شاملة لتصميم واختبار وتوثيق APIs. من خلال استخدام Apidog جنبًا إلى جنب مع Wget، يمكنك أتمتة عملية تنزيل البيانات من APIs، مما يسهل إدارة تفاعلات API الخاصة بك.
حالة استخدام مثال: تنزيل استجابات API
تخيل أنك تعمل مع API يوفر تقارير يومية بتنسيق JSON. بدلاً من تنزيل هذه التقارير يدويًا كل يوم، يمكنك استخدام Wget بالتزامن مع قدرات إدارة API لـ Apidog لأتمتة هذه المهمة. إليك كيفية القيام بذلك:
- حدد نقطة نهاية API الخاصة بك في Apidog: استخدم Apidog لتوثيق نقطة نهاية API الخاصة بك، بما في ذلك رؤوس وبارامترات المصادقة اللازمة.
2. إنشاء أمر Wget: بناءً على توثيق API في Apidog، يمكنك إنشاء أمر Wget لتنزيل التقرير. على سبيل المثال:
wget --header="Authorization: Bearer YOUR_API_TOKEN" https://api.example.com/v1/files/download
تثبيت Wget على Windows
الخطوة 1: تنزيل Wget لـ Windows
- زيارة صفحة Wget لـ Windows: انتقل إلى موقع Eternally Bored لتنزيل أحدث إصدار من Wget لـ Windows.
- اختر الإصدار الصحيح: اعتمادًا على بنية نظامك (32 بت أو 64 بت)، اختر ملف
.exe
المناسب. إذا كنت غير متأكد، فإن معظم الأنظمة الحديثة هي 64 بت. - تنزيل الملف: انقر على الرابط لتنزيل ملف
wget.exe
.
الخطوة 2: تثبيت Wget
- حدد موقع الملف الذي تم تنزيله: بمجرد اكتمال التنزيل، انتقل إلى المجلد الذي حفظت فيه ملف
wget.exe
. - نقل الملف: لجعل Wget متاحًا من أي موجه أوامر، انقل ملف
wget.exe
إلى المجلدC:\Windows\System32
. يتيح لك هذا تشغيل Wget من أي موجه أوامر دون الحاجة إلى تحديد المسار الكامل.
- للقيام بذلك، يمكنك النقر بزر الماوس الأيمن على الملف واختيار "قص"، ثم الانتقال إلى
C:\Windows\System32
، والنقر بزر الماوس الأيمن في المجلد واختيار "لصق."
الخطوة 3: تحقق من التثبيت
- فتح موجه الأوامر: اضغط على
Win + R
، اكتبcmd
، واضغط على Enter لفتح موجه الأوامر. - تحقق من إصدار Wget: اكتب الأمر التالي واضغط على Enter:
wget --version
3. تأكيد التثبيت: إذا تم تثبيت Wget بشكل صحيح، يجب أن ترى معلومات الإصدار معروضة. وهذا يؤكد أن Wget جاهز للاستخدام.
تثبيت Wget على macOS
الخطوة 1: تثبيت Homebrew (إذا لم يكن مثبتًا بالفعل)
Homebrew هو مدبّر حزم شائع لـ macOS يبسط عملية تثبيت البرامج.
- فتح Terminal: يمكنك العثور على Terminal في التطبيقات > الأدوات أو عن طريق البحث عنه باستخدام Spotlight (
Cmd + Space
). - تثبيت Homebrew: قم بتشغيل الأمر التالي في Terminal لتثبيت Homebrew:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
3. اتبع التعليمات: اتبع التعليمات المعروضة على الشاشة لإكمال التثبيت. قد تحتاج إلى إدخال كلمة المرور الخاصة بك.
الخطوة 2: تثبيت Wget
- تحديث Homebrew: قبل تثبيت Wget، تأكد من أن Homebrew محدث عن طريق تشغيل:
brew update
2. تثبيت Wget: قم بتشغيل الأمر التالي في Terminal:
brew install wget
3. انتظر التثبيت: سيقوم Homebrew بتنزيل وتثبيت Wget بالإضافة إلى أي اعتمادات ضرورية.
الخطوة 3: تحقق من التثبيت
- تحقق من إصدار Wget: بعد انتهاء التثبيت، تحقق من ذلك عن طريق تشغيل:
wget --version
2. تأكيد التثبيت: يجب أن ترى معلومات الإصدار إذا تم تثبيت Wget بشكل صحيح.
تثبيت Wget على Linux
الخطوة 1: تحديث مستودع الحزم
- فتح Terminal: اعتمادًا على توزيعة Linux الخاصة بك، يمكنك عادةً العثور على Terminal في قائمة التطبيقات أو بالضغط على
Ctrl + Alt + T
. - تحديث مستودع الحزم: قم بتشغيل الأمر التالي لتحديث مستودع الحزم الخاص بك:
sudo apt update
الخطوة 2: تثبيت Wget
لتوزيعات المستندة إلى Debian (مثل Ubuntu):
sudo apt install wget
لتوزيعات المستندة إلى Red Hat (مثل Fedora):
sudo dnf install wget
لـ Arch Linux:
sudo pacman -S wget
الخطوة 3: تحقق من التثبيت
- تحقق من إصدار Wget: بعد التثبيت، تحقق من ذلك عن طريق تشغيل:
wget --version
2. تأكيد التثبيت: يجب أن ترى معلومات الإصدار إذا تم تثبيت Wget بشكل صحيح.
الاستخدام الأساسي لـ Wget
الآن بعد أن قمت بتثبيت Wget على نظامك، إليك بعض الأوامر الأساسية لتبدأ:
تنزيل ملف واحد
لتنزيل ملف واحد، استخدم الأمر التالي:
wget http://example.com/file.zip
تنزيل ملف باسم مختلف
لحفظ الملف الذي تم تنزيله باسم مختلف، استخدم -O
:
wget -O newfilename.zip http://example.com/file.zip
تنزيل الملفات بشكل متكرر
لتنزيل موقع ويب كامل أو دليل، استخدم -r
:
wget -r http://example.com/directory/
استئناف تنزيل مكسور
إذا تم مقاطعة التنزيل، يمكنك استئنافه باستخدام -c
:
wget -c http://example.com/file.zip
تنزيل أنواع ملفات معينة فقط
لتنزيل أنواع ملفات معينة فقط (مثل PDF)، استخدم -A
:
wget -r -A.pdf http://example.com/directory/
تنزيل باستخدام سلسلة User-Agent
في بعض الأحيان، قد تحظر مواقع الويب الطلبات من أدوات سطر الأوامر. يمكنك تقليد متصفح من خلال ضبط سلسلة User-Agent مخصصة:
wget --user-agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3" http://example.com
تحديد سرعة التنزيل
لتحديد سرعة التنزيل، استخدم --limit-rate
:
wget --limit-rate=200k http://example.com/file.zip
يقوم هذا الأمر بتحديد سرعة التنزيل إلى 200 كيلوبايت/ثانية.
الاستخدام المتقدم لـ Wget
لم يعد Wget مجرد أداة لتنزيلات بسيطة؛ بل لديه العديد من الميزات المتقدمة التي يمكن أن تكون مفيدة للغاية.
التنزيل مع المصادقة
إذا كنت بحاجة لتنزيل ملفات من موقع يتطلب المصادقة، يمكنك استخدام خيارات --user و --password:
wget --user=username --password=password http://example.com/protected/file.zip
تنزيل ملفات متعددة
يمكنك إنشاء ملف نصي يحتوي على قائمة من URL واستخدام Wget لتنزيلها جميعًا دفعة واحدة. قم بإنشاء ملف باسم urls.txt
بمحتوى التالي:
http://example.com/file1.zip
http://example.com/file2.zip
http://example.com/file3.zip
ثم قم بتشغيل:
wget -i urls.txt
عكس موقع ويب
لإنشاء نسخة محلية من موقع ويب كامل، يمكنك استخدام خيار --mirror
، وهو اختصار لـ -r -N -l inf --no-remove-listing
:
wget --mirror http://example.com
سيقوم هذا الأمر بتنزيل الموقع بالكامل مع الحفاظ على هيكل الدليل.
استخدام Wget مع البروكسيات
إذا كنت وراء بروكسي، يمكنك تكوين Wget لاستخدامه عن طريق تحديد إعدادات البروكسي في ملف .wgetrc
الخاص بك أو باستخدام خيارات سطر الأوامر:
export http_proxy=http://proxy-server:port
export https_proxy=https://proxy-server:port
التنزيل من خوادم FTP
يمكن أيضًا استخدام Wget لتنزيل الملفات من خوادم FTP. على سبيل المثال:
wget ftp://username:password@ftp.example.com/file.zip
التعامل مع الكوكيز
إذا كنت بحاجة للحفاظ على جلسة أو حالة تسجيل دخول، يمكنك استخدام الكوكيز مع Wget. أولاً، قم بتصدير الكوكيز من متصفحك إلى ملف (باستخدام ملحق متصفح)، ثم استخدم:
wget --load-cookies cookies.txt http://example.com/protected/file.zip
استكشاف الأخطاء الشائعة مع Wget
بينما يعد Wget أداة قوية، قد تواجه بعض المشكلات الشائعة. إليك بعض نصائح استكشاف الأخطاء:
1. أخطاء شهادة SSL
إذا تلقيت أخطاء شهادة SSL، يمكنك تجاوز التحقق من SSL (لا يُوصى به للاستخدام في الإنتاج) بالأمر التالي:
wget --no-check-certificate https://example.com/file.zip
2. خطأ 403 محظور
إذا واجهت خطأ 403 محظور، قد يكون السبب هو أن الخادم يحظر الطلبات من Wget. حاول تغيير سلسلة User-Agent أو استخدام بروكسي.
3. انتهاء مهلة الاتصال
إذا انتهت مهلة Wget أثناء محاولة الاتصال، تحقق من اتصال الإنترنت الخاص بك وتأكد من أن URL صحيح. يمكنك أيضًا زيادة مدة المهلة:
wget --timeout=30 http://example.com/file.zip
4. عدم كفاية مساحة القرص
إذا نفدت مساحة القرص أثناء التنزيل، سيتوقف Wget عن التنزيل. تأكد من أن لديك مساحة كافية قبل بدء التنزيلات الكبيرة.
أفضل الممارسات لاستخدام Wget
لتحقيق أقصى استفادة من Wget، ضع في اعتبارك أفضل الممارسات التالية:
1. استخدم أحدث إصدار
تأكد دائمًا من أنك تستخدم أحدث إصدار من Wget للاستفادة من أحدث الميزات وتحديثات الأمان.
2. اقرأ الوثائق
تعرف على وثائق Wget الرسمية لفهم جميع الخيارات والميزات المتاحة.
3. اختبر باستخدام تنزيلات صغيرة
قبل تنزيل ملفات كبيرة أو مواقع ويب كاملة، اختبر أوامرك باستخدام ملفات صغيرة لضمان عمل كل شيء كما هو متوقع.
4. احترم سياسات الموقع
عند تنزيل الملفات، احترم ملف robots.txt
الخاص بالموقع وشروط الخدمة. تجنب إرهاق الخوادم بالطلبات المفرطة.
5. استخدم تسجيل الدخول
استخدم خيار -o
لتسجيل مخرجات أوامر Wget الخاصة بك إلى ملف للمراجعة لاحقًا:
wget -o download.log http://example.com/file.zip
6. جدولة التنزيلات باستخدام Wget
يمكنك أتمتة مهام التنزيل الخاصة بك باستخدام cron jobs على Linux و macOS أو جدولة المهام على Windows. تتيح لك جدولة التنزيلات باستخدام Wget تشغيل الأوامر في أوقات معينة، مما يضمن تنزيل الملفات بدون تدخل يدوي. هذه الميزة مفيدة بشكل خاص للمهام مثل تنزيل التقارير اليومية، أو نسخ الملفات احتياطيًا، أو عكس مواقع الويب. لتعزيز هذه العملية، يمكن أن يقدم دمج Apidog فوائد إضافية، خاصة عند العمل مع APIs. يوفر Apidog منصة لتصميم واختبار وتوثيق APIs، مما يجعل من السهل إدارة نقاط النهاية التي تريد تنزيل البيانات منها. من خلال دمج قدرات جدولة Wget مع ميزات إدارة API لـ Apidog، يمكنك تسريع تدفق عملك وأتمتة استرجاع البيانات من APIs بشكل فعال.
استخدام مهام Cron على Linux و macOS
Cron هو مجدول مهام يعتمد على الوقت في أنظمة تشغيل شبيهة بـ Unix يتيح لك تشغيل البرامج النصية أو الأوامر في فترات محددة. إليك كيفية إعداد مهمة cron لجدولة أوامر Wget:
الخطوة 1: فتح ملف crontab
- افتح الطرفية الخاصة بك.
- اكتب الأمر التالي لتحرير ملف crontab:
crontab -e
يفتح هذا الأمر ملف crontab في محرر النصوص الافتراضي (عادةً vi
أو nano
).
الخطوة 2: إضافة مهمة Cron
في ملف crontab، يمكنك تحديد التوقيت والأمر الذي تريد تشغيله. الصيغة لمهمة cron هي كما يلي:
* * * * * command_to_execute
يمثل الخمس نجمات الحقول الزمنية التالية:
- الدقائق (0-59)
- الساعة (0-23)
- اليوم من الشهر (1-31)
- الشهر (1-12)
- اليوم من الأسبوع (0-6، حيث 0 هو الأحد)
على سبيل المثال، لجدولة أمر Wget لتنزيل ملف من API كل يوم في الساعة 2 صباحًا، يمكنك إضافة السطر التالي إلى ملف crontab الخاص بك، مع استخدام Apidog لإدارة نقطة نهاية API الخاصة بك:
0 2 * * * wget --header="Authorization: Bearer YOUR_API_TOKEN" -O /path/to/save/daily-report.json https://api.example.com/reports/daily
الخطوة 3: حفظ والخروج
- إذا كنت تستخدم
vi
، اضغط علىEsc
، ثم اكتب:wq
، واضغط على Enter لحفظ والخروج. - إذا كنت تستخدم
nano
، اضغط علىCtrl + X
، ثمY
لتأكيد الحفظ، واضغط على Enter.
الخطوة 4: تحقق من مهمة Cron
للتحقق من أن مهمتك قد أضيفت بنجاح، يمكنك قائمة المهام الحالية الخاصة بك عبر:
crontab -1
سيعرض هذا الأمر جميع المهام المجدولة لمستخدمك.
سيناريوهات مثال مهام Cron
تنزيل ملف كل ساعة: لتنزيل ملف كل ساعة، يمكنك استخدام مهمة cron التالية:
0 * * * * wget http://example.com/file.zip -O /path/to/save/file.zip
تنزيل ملف كل يوم اثنين في الساعة 6 صباحًا: لتنزيل ملف كل يوم اثنين في الساعة 6 صباحًا، استخدم:
0 6 * * 1 wget http://example.com/weekly-report.zip -O /path/to/save/weekly-report.zip
تشغيل أوامر متعددة: يمكنك جدولة أوامر متعددة عن طريق فصلها بفواصل منقوطة. على سبيل المثال، لتنزيل ملفين كل يوم في الساعة 3 مساءً:
0 15 * * * wget http://example.com/file1.zip -O /path/to/save/file1.zip; wget http://example.com/file2.zip -O /path/to/save/file2.zip
استخدام جدولة المهام على Windows
على Windows، يمكنك استخدام جدولة المهام لأتمتة أوامر Wget. إليك كيفية إعداد ذلك:
الخطوة 1: فتح جدولة المهام
- اضغط على
Win + R
لفتح نافذة تشغيل. - اكتب
taskschd.msc
واضغط على Enter لفتح جدولة المهام.
الخطوة 2: إنشاء مهمة جديدة
- في الجزء الأيمن، انقر على إنشاء مهمة أساسية.
- اتبع المعالج لتسمية مهمتك وتوفير وصف.
الخطوة 3: تعيين المشغل
- اختر متى تريد بدء المهمة (مثل يوميًا، أسبوعيًا).
- قم بتعيين الوقت والتكرار المحددين حسب احتياجاتك.
الخطوة 4: تعيين الإجراء
- اختر بدء برنامج كإجراء.
- في حقل البرنامج/النص، تصفح إلى موقع
wget.exe
. - في حقل إضافة وسائط (اختياري)، أدخل أمر Wget الخاص بك. على سبيل المثال:
http://example.com/daily-report.zip -O C:\path\to\save\daily-report.zip
الخطوة 5: الانتهاء والحفظ
- راجع إعداداتك وانقر على إنهاء لإنشاء المهمة.
الخطوة 6: تحقق من المهمة
يمكنك التحقق من جدولة مهمتك من خلال البحث عنها في مكتبة جدولة المهام. يمكنك أيضًا تشغيل المهمة يدويًا لضمان عملها كما هو متوقع.
الخاتمة
Wget هو أداة قوية لتنزيل الملفات من الويب، وسهلة التثبيت على Windows و macOS و Linux. من خلال اتباع الخطوات الموضحة في هذا الدليل، يمكنك بسرعة إعداد Wget على نظامك والبدء في استخدامه لأتمتة التنزيلات، وعكس مواقع الويب، وأداء مهام أخرى بكفاءة. سواء كنت مطورًا أو مدير نظام أو مستخدمًا قويًا، فإن Wget هو أداة أساسية في حقيبتك. مع ميزاته القوية ومرونته، يمكن أن يساعدك Wget في إدارة التنزيلات بشكل فعال وتبسيط تدفق عملك.
موارد إضافية
لزيادة فهمك لـ Wget وقدراته، ضع في اعتبارك استكشاف الموارد التالية:
- وثائق Wget الرسمية: دليل GNU Wget
- مستودع GitHub لـ Wget: Wget على GitHub
من خلال استثمار الوقت في تعلم وتطبيق هذه الممارسات الأفضل، ستكون مستعدًا تمامًا لمعالجة مهام التنزيل الخاصة بك وإنشاء تدفقات عمل فعالة باستخدام Wget.