برنامه دانلود از اینستاگرام با پایتون

سلام! امروز داشتم دنبال یه راه امن! برای دانلود از اینستاگرام میگشتم که یه کتابخونه برای ساخت برنامه دانلود از اینستاگرام با پایتون پیدا کردم. گفتم به شما هم معرفیش کنم. اگر احیانا شما هم کتابخونه دیگه ای سراغ داشتین توی بخش نظرات بنویسید! مرسی! اها اینم قبل از شروع بگم که خب برای کار با چنین چیزایی اگر بخواین درک کنید که چیکار میکنید باید کامل پایتون رو بلد باشین که توی دوره کامل پایتون از صفر تا صد پایتون رو میتونید مسلط بشین. همچنین اگر خواستین میتونید از این اسکریپت توی باتهای تلگرامی استفاده کنید که دوره بات تلگرام هم اینو بهتون یاد دادم.
اسم این کتابخونه yt-dlp هستش، اگه اینجا کلیک کنید میرین به صفحه این کتابخونه توی مخازن pypi و میتونید اطلاعات تکمیلی رو ازش ببینید. حالا بیاین باهاش یه برنامه بسازیم!
خب اول از همه باید دانلودش کنید، پس توی ترمینال یا کامند پرامپت و.. بنویسید:
pip install yt-dlp
بعدش که نصب شد، یه فایل پایتون بسازید و اول از همه ایمپورتش کنید:
import yt_dlp
بعدش بیاین باکلاس بازی در بیارین و یه تابع درست کنید که یه url میگیره و میخواد اونو دانلودش کنه. پس بنویسید:
def download(url):
pass
حالا به جای pass باید کدهای دانلود رو بذاریم. اول از همه باید outtmpl رو تنظیم کنیم. این به ما اجازه میده که بگیم اسم فایل چی باشه، پسوند فایل چی باشه و… مثلا اگر یه ویدیو اینستاگرامی داشته باشیم به آدرس زیر:
url = “https://www.instagram.com/reel/xyz123/”
این ویدیو این مقادیر رو توی خودش داره:
{
"id": "xyz123",
"ext": "mp4"
}
ما باید اینا رو برای دانلود ست کنیم پس بنویسید:
ydl_opts = {"outtmpl": "downloads/%(id)s.%(ext)s"}
این یعنی که فایلهای دانلود برن توی یه پوشه به اسم downloads قرار بگیرن و حالا اسم و فرمت خودشون رو هم داشته باشن. حالا باید اون url که کاربر وارد میکنه رو با این تنظیمات باز کنیم و دانلودشون کنیم پس:
with yt_dlp.YoutubeDL(ydl_opts) as ydl:
ydl.download([url])
دقت کنید که آرگومان url یعنی اون چیزی که به تابع میدیم باید توی یه لیست باشه. حتی اگر یه دونه لینک باشه.
حالا به تابع یه لینک بدین و فراخوانیش بکنید:
download("https://www.instagram.com/p/DF-mfJyouLc/")
همین! ویدیو شما به راحتی دانلود میشه.
حالا چند تا نکته:
نکته اول اینکه اگر دانلود کار نکرد باید فیلترشکن داشته باشین قطعا!
نکته دوم اینکه این کتابخونه فقط برای دانلود ریلز و ویدیو از اینستاگرام هستش.
کد کامل:
import yt_dlp
def download(url):
ydl_opts = {"outtmpl": "downloads/%(id)s.%(ext)s"}
with yt_dlp.YoutubeDL(ydl_opts) as ydl:
ydl.download([url])
download("https://www.instagram.com/p/DF-mfJyouLc/")
نظراتتون رو برام بنویسید، تا آموزشهای بعدی کدهاتون بیباگ و تنتون سلامت 🙂
دیدگاهتان را بنویسید