نوشتن یک دانلودر ساده در پایتون :: Mr Python | مستر پایتون

نوشتن یک دانلودر ساده در پایتون

  • ۱۲۷۴

نوشتن یک دانلودر ساده در پایتون

 

درود به همه !

 

بازم ما اومدیم با یه اسکریپت پایتونی باحال :) .

 

راستش ماجرا از حدودا چند روز پیش شروع شد . بله طبق معمول در قرنطینه بودیم و حوصلمون حسابی سر رفته بود . به خاطر یه سری مسایل با یکی از دوستان پایتون دوستمون به این نتیجه رسیدیم یه دانلودری با پایتون بسازیم که یه لیست لینک بهش بدیم و خودش تمامشو خودکار دانلود کنه. نشستیمو یه اسکریپت کوچیک پایتونی نوشتیم که میایم لیست لینک ها رو میریزیم داخل یه فایل متنی و میدیم بهش خودش تمامشو برامون دانلود میکنه. راستش به کار ما که خیلی اومد هر شب کلی فیلم باهاش دانلود میکنیم . همین الانشم یه لیست لینک از فیلم ها آماده کردیم خدابخواد شبو نصفه شب و ... میزاریم دانلود شه خودکار . :)

خب داستان بسه بریم سراغ اسکریپت

 

اول یه فایل پایتونی درست میکنیم و بعد سورس زیر رو مینویسیم داخلش :

import requests

def download(link,name):
    file = requests.get(link)
    if file.status_code != 200:
        return False
    f = open(name,"wb")
    f.write(file.content)
    f.close()
    return True

link = input("Link : ")
name = input("Name : ")

result = download(link,name)
if result:
    print ("Ok !")
else:
    print("Error !")

 

خب پس از نوشتن سورس نیازه تا کتابخونه ی مورد نیازشو نصب کنیم . این سورس برای دانلود فایل ها از کتابخونه ی requests استفاده میکنه که الان توضیح میدیم سورس رو .

برای نصب کتاب خونه در لینوکس :‌

MrPython@debian:~$ pip3 install requests

و برای نصب کتابخونه در ویندوز :

C:\> pip install requests

 

خب حالا اسکریپت آماده ی اجرا شدنه فقط قبلش یه توضیحی در مورد سورس کد بدم . اول که کتابخونه ی requests رو وارد برنامه کردیم .

بعد یه تابع به نام download نوشتیم که کارش دانلود کردن فایله و دوتا ورودی داره یکی لینک هستش که قراره بگیره و یکی هم نام فایل هست که پس از دانلود فایل رو به چه نامی ذخیرش کنه. بعد از اینکه ورودی هارو گرفت میاد با استفاده از تابع get در کتابخانه ی requests فایل رو دانلود میکنه و اونو مینویسه داخل یه فایلی به همون نامی که توی ورودی بهش دادیم و نهایتا فایل ما دانلود و ساخته میشه .

این از تابع

 

بعد اول برنامه دوتا ورودی از کاربر گرفتیم یکی لینک دانلود و یکی هم همون نام فایل که قراره بدیم به تابع .

بعدش تابع download فراخونی میشه و لینک و نامی که گرفتیم در ورودی داده میشه بهش و فایل رو برامون دانلود میکنه .

اون شرط های آخر برنامه هم که معلومه اگه تابع True رو برگردوند یعنی فایل دانلود شده و اگه False برگردوند یعنی ارور داره و دانلود نشده (حالا به هر دلیلی).

اینم از این اسکریپت .

 

ولی اگه یادتون باشه گفتم که ما یه اسکریپت نوشتیم که یه لیست از لینک ها رو بهش میدیم و برامون دانلود میکنه .

 

برای تمرین همین اسکریپت رو پیشرفتش بدین و به جای اینکه لینک رو در ورودی بگیرین ، بنویسین داخل یه فایل متنی و از اون فایل بخونین داخل برنامه ویکی یکی دانلود کنین .

اگه تونستین این کارو بکنین برام اسکریپتشو ایمیل کنین به آدرس hossein.ajib.98@gmail.com میزارم روی وبلاگ .

 

در پست بعدی اسکریپتی که گفتمو به طور کامل مینویسیم باهم .

شاد باشین !

 

یا حق !

 

-------------------------------------------------------

مرسی از دوست پایتون دوست : [+] DELSY [+]

 

 

نظرات: (۰) هیچ نظری هنوز ثبت نشده است
ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی