مقدمه: فالورهای معلق و راه حل پایتونی:

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

آموزش ساخت ربات اینستاگرام با پایتون-سلنیوم-Knowxis-Knowxis
چرا باید به این ربات نیاز داشته باشیم؟

تصور کنید صدها یا حتی هزاران درخواست فالو معلق در حساب کاربری‌تان دارید. اگر بخواهید این درخواست‌ها را به صورت دستی مدیریت کنید، باید مراحل زیر را برای هر کدام تکرار کنید:

  1. آیدی هر شخص را کپی کنید.
  2. در مرورگر، به پروفایل اینستاگرام او بروید (مثلاً با جستجوی “instagram.com/آیدی_شخص”).
  3. گزینه «Cancel Request» یا مشابه آن را پیدا کرده و کلیک کنید.
  4. صفحه درخواست‌های فالو را رفرش کنید.

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

ربات ما چه عملیاتی انجام می‌دهد؟

آموزش ساخت ربات اینستاگرام با پایتون-سلنیوم-Knowxis-Knowxis

رباتی که قرار است بسازیم، دقیقاً شبیه یک کاربر واقعی عمل می‌کند، اما با سرعت و دقت بسیار بالاتر. مراحل کار ربات به این صورت است:

  • ورود به اینستاگرام: ربات ابتدا وارد حساب کاربری اینستاگرام شما می‌شود.
  • پیدا کردن درخواست‌ها: به بخش «Current Follow Requests» می‌رود.
  • بارگذاری کامل لیست: برای اطمینان از دسترسی به تمام درخواست‌ها، چندین بار بر روی گزینه «View More» کلیک می‌کند تا کل لیست بارگذاری شود.
  • حذف درخواست‌ها: سپس، تک تک آیدی‌های موجود در لیست را بررسی کرده و درخواست فالو مربوط به آن‌ها را لغو می‌کند.

به همین سادگی، تمام آیدی‌هایی که قصد حذفشان را داشتید، در زمان کوتاهی حذف خواهند شد.

ابزارهای لازم برای ساخت ربات اینستاگرام:

برای ساخت این ربات، ما از زبان و کتابخانه قدرتمند استفاده می‌کنیم. پایتون به دلیل سادگی و قدرت آن در اتوماسیون وب، انتخاب ایده‌آلی است. اگر به برنامه‌نویسی پایتون علاقه‌مند هستید، می‌توانید به سر بزنید و مهارت‌هایتان را ارتقا دهید.

گام اول: نصب Selenium برای پایتون:

آموزش ساخت ربات اینستاگرام با پایتون-سلنیوم-Knowxis-Knowxis

برای شروع، باید Selenium را در سیستم خود نصب کنید:

  1. جستجو و دسترسی: در مرورگر خود، عبارت “selenium for python” را جستجو کرده و به وب‌سایت رسمی Selenium (معمولاً اولین لینک) بروید.
  2. نصب کتابخانه: در صفحه مربوط به پایتون، دستور pip install selenium را کپی کرده و در ترمینال یا Command Prompt سیستم خود (CMD در ویندوز) وارد کنید و Enter را بزنید. این کار کتابخانه Selenium را برای پایتون نصب می‌کند.
  3. دانلود WebDriver: Selenium برای تعامل با مرورگرهای وب، نیاز به یک “WebDriver” دارد. این درایور، پلی بین کد پایتون شما و مرورگر است. به بخش “Drivers” در وب‌سایت Selenium بروید.
  4. انتخاب مرورگر: مرورگر مورد نظر خود را انتخاب کنید. فایرفاکس (Firefox) یک گزینه خوب و معمول است، اما می‌توانید کروم (Chrome) یا هر مرورگر دیگری را نیز انتخاب کنید. روی لینک دانلود WebDriver مربوط به مرورگر انتخابی‌تان کلیک کنید.
  5. استخراج و قرار دادن در مسیر پروژه: فایل فشرده (زیپ) دانلود شده را باز کنید و فایل WebDriver (مثلاً geckodriver.exe برای فایرفاکس) را در همان پوشه‌ای که قرار است کد پایتون ربات را بنویسید، قرار دهید.

شروع کدنویسی ربات اینستاگرام:

حالا که ابزارهای لازم را آماده کرده‌اید، زمان آن است که شروع به کدنویسی کنیم. یک فایل پایتون جدید (مثلاً instagram_bot.py) در پوشه‌ای که WebDriver را قرار دادید، ایجاد کنید. می‌توانید آن را با یک ویرایشگر کد مانند VS Code باز کنید.

گام دوم: راه‌اندازی مرورگر و ورود به اینستاگرام:

اولین قدم، باز کردن مرورگر و هدایت آن به صفحه ورود اینستاگرام است. کد زیر را در فایل پایتون خود بنویسید:

from selenium import webdriver
import time

# مسیر WebDriver (مثال برای فایرفاکس)
driver_path = './geckodriver.exe' # اگر WebDriver در همین پوشه است

# راه‌اندازی مرورگر فایرفاکس
driver = webdriver.Firefox(executable_path=driver_path)

# رفتن به صفحه ورود اینستاگرام
driver.get('https://www.instagram.com/accounts/login/')

# صبر کردن برای بارگذاری صفحه (می‌توانید زمان را تنظیم کنید)
time.sleep(5)

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

گام سوم: وارد کردن نام کاربری و رمز عبور:

برای وارد کردن اطلاعات ورود، باید عناصر (Elements) مربوط به نام کاربری و رمز عبور را در صفحه پیدا کنیم. این کار معمولاً با استفاده از XPath یا CSS Selector انجام می‌شود. برای پیدا کردن XPath یک عنصر، روی آن در مرورگر کلیک راست کرده و گزینه “Inspect” یا “Inspect Element” را انتخاب کنید. سپس روی کد HTML مربوطه کلیک راست کرده و “Copy” و سپس “Copy XPath” را بزنید.

# پس از time.sleep(5) قبلی، این کدها را اضافه کنید

# پیدا کردن فیلد نام کاربری و وارد کردن آن
username_field = driver.find_element_by_xpath('//input[@name="username"]')
username_field.send_keys('YOUR_USERNAME') # نام کاربری خود را اینجا وارد کنید

# پیدا کردن فیلد رمز عبور و وارد کردن آن
password_field = driver.find_element_by_xpath('//input[@name="password"]')
password_field.send_keys('YOUR_PASSWORD') # رمز عبور خود را اینجا وارد کنید

# پیدا کردن دکمه ورود و کلیک بر روی آن
login_button = driver.find_element_by_xpath('//button[@type="submit"]')
login_button.click()

time.sleep(5) # صبر برای ورود به حساب کاربری

نکته مهم امنیتی: هرگز نام کاربری و رمز عبور خود را به صورت مستقیم در کد قرار ندهید، به خصوص اگر قصد دارید کد را با دیگران به اشتراک بگذارید. از روش‌های امن‌تر مانند متغیرهای محیطی یا فایل‌های تنظیمات برای نگهداری اطلاعات حساس استفاده کنید.

گام چهارم: هدایت به صفحه درخواست‌های فالو:

پس از ورود موفقیت‌آمیز، ممکن است اینستاگرام گزینه‌هایی مانند “Save Info” یا “Turn On Notifications” را نمایش دهد. برای سادگی، می‌توانیم مستقیماً به صفحه درخواست‌های فالو برویم:

# پس از time.sleep(5) قبلی، این کد را اضافه کنید
driver.get('https://www.instagram.com/accounts/login/following/') # آدرس دقیق صفحه درخواست‌های فالو
time.sleep(5)

گام پنجم: بارگذاری کامل لیست درخواست‌ها:

در این مرحله، باید تضمین کنیم که تمام درخواست‌های معلق بارگذاری شده‌اند. این کار با شبیه‌سازی کلیک بر روی دکمه “View More” انجام می‌شود:

# پیدا کردن و کلیک کردن بر روی View More تا زمانی که دیگر وجود نداشته باشد یا تعداد کافی بارگذاری شود
for _ in range(6): # مثلاً 6 بار کلیک کنید، می‌توانید این عدد را تنظیم کنید
    try:
        view_more_button = driver.find_element_by_xpath('//button[text()="View More"]') # XPath دکمه View More
        view_more_button.click()
        time.sleep(1) # کمی صبر کنید تا محتوا بارگذاری شود
    except:
        break # اگر دکمه پیدا نشد، یعنی همه بارگذاری شده‌اند

time.sleep(3) # صبر برای بارگذاری نهایی لیست

عدد 6 در کد بالا، تعداد دفعاتی است که ربات تلاش می‌کند تا روی دکمه “View More” کلیک کند. شما می‌توانید این عدد را بر اساس تعداد درخواست‌های معلقتان تنظیم کنید.

گام ششم: جمع‌آوری و حذف درخواست‌ها:

حالا نوبت به بخش اصلی کار می‌رسد: یافتن و لغو درخواست‌ها. ما باید تمام دکمه‌های “Requested” یا “Cancel Request” را پیدا کرده و روی آن‌ها کلیک کنیم.

# پیدا کردن تمام دکمه‌های 'Requested' یا 'Cancel Request'
# XPath ممکن است با تغییرات اینستاگرام تغییر کند، باید آن را به روز نگه دارید
cancel_buttons = driver.find_elements_by_xpath('//button[text()="Requested"]') # یا XPath دقیق‌تر دکمه لغو درخواست

print(f"تعداد درخواست‌های معلق: {len(cancel_buttons)}")

for button in cancel_buttons:
    try:
        button.click()
        time.sleep(1) # صبر برای انجام عملیات لغو
        # ممکن است یک پنجره تایید باز شود که نیاز به کلیک مجدد دارد
        confirm_button = driver.find_element_by_xpath('//button[text()="Unfollow"]') # یا XPath دکمه تایید
        confirm_button.click()
        time.sleep(1)
    except Exception as e:
        print(f"خطا در لغو درخواست: {e}")
        continue

print("عملیات لغو درخواست‌ها به پایان رسید.")
driver.quit() # بستن مرورگر پس از اتمام کار

توجه: XPath دقیق دکمه‌ها ممکن است با به‌روزرسانی‌های اینستاگرام تغییر کند. برای اطمینان، همیشه XPath را مستقیماً از صفحه فعلی اینستاگرام خود استخراج کنید.

سوالات متداول:

آیا استفاده از ربات اینستاگرام قانونی است؟

استفاده از ربات‌ها برای اتوماسیون فعالیت‌ها در اینستاگرام، معمولاً خلاف قوانین و شرایط استفاده (Terms of Service) اینستاگرام است. اینستاگرام ممکن است حساب کاربری شما را به دلیل استفاده از فعالیت‌های خودکار شناسایی و مسدود کند. استفاده از این ربات‌ها با مسئولیت خود شماست و Knowxis هیچ مسئولیتی در قبال عواقب آن نمی‌پذیرد.

آیا می‌توانم این ربات را برای کارهای دیگر استفاده کنم؟

بله، با تسلط بر و می‌توانید ربات‌های مختلفی برای اتوماسیون کارهای وب (مانند جمع‌آوری اطلاعات، پر کردن فرم‌ها، تست وب‌سایت‌ها و...) بسازید. این مقاله تنها یک نمونه کاربردی از قدرت این ابزارهاست.

جمع‌بندی:

در این مقاله از Knowxis، ما به شما نشان دادیم که چگونه با استفاده از پایتون و کتابخانه Selenium، یک ربات ساده اما کاربردی برای مدیریت درخواست‌های فالو معلق در اینستاگرام بسازید. این پروژه نه تنها مشکل شما را حل می‌کند، بلکه یک گام عالی برای ورود به دنیای اتوماسیون وب و برنامه‌نویسی پایتون است. به یاد داشته باشید که همیشه به به‌روزرسانی‌های وب‌سایت‌ها توجه کنید، زیرا ممکن است XPath و CSS Selector ها تغییر کنند و نیاز به تنظیم مجدد کد داشته باشید. برای یادگیری عمیق‌تر و پروژه‌های هیجان‌انگیزتر، حتماً به سایر سر بزنید!

آموزش ساخت ربات اینستاگرام با پایتون-سلنیوم-Knowxis-Knowxis
آموزش ساخت ربات اینستاگرام با پایتون-سلنیوم-Knowxis-Knowxis
آموزش ساخت ربات اینستاگرام با پایتون-سلنیوم-Knowxis-Knowxis
ساخت ربات اینستاگرام با پایتون-سلنیوم-Knowxis-Knowxis
ساخت ربات اینستاگرام با پایتون-سلنیوم-Knowxis-Knowxis
آموزش ساخت ربات اینستاگرام با پایتون-سلنیوم-Knowxis-Knowxis
آموزش ساخت ربات اینستاگرام با پایتون-سلنیوم-Knowxis-Knowxis
آموزش ساخت ربات اینستاگرام با پایتون-سلنیوم-Knowxis-Knowxis
آموزش ساخت ربات اینستاگرام با پایتون-سلنیوم-Knowxis-Knowxis
آموزش ساخت ربات اینستاگرام با پایتون-سلنیوم-Knowxis-Knowxis
آموزش ساخت ربات اینستاگرام با پایتون-سلنیوم-Knowxis-Knowxis
آموزش ساخت ربات اینستاگرام با پایتون-سلنیوم-Knowxis-Knowxis
آموزش ساخت ربات اینستاگرام با پایتون-سلنیوم-Knowxis-Knowxis
آموزش ساخت ربات اینستاگرام با پایتون-سلنیوم-Knowxis-Knowxis
آموزش ساخت ربات اینستاگرام با پایتون-سلنیوم-Knowxis-Knowxis
آموزش ساخت ربات اینستاگرام با پایتون-سلنیوم-Knowxis-Knowxis
آموزش ساخت ربات اینستاگرام با پایتون-سلنیوم-Knowxis-Knowxis
آموزش ساخت ربات اینستاگرام با پایتون-سلنیوم-Knowxis-Knowxis
آموزش ساخت ربات اینستاگرام با پایتون-سلنیوم-Knowxis-Knowxis