کد نوشته شده در بالا، یک خطای مهم دارد و آن خطا، عدم تبعیت از اصول «خودت را تکرار نکن» (Don’t Repeat Yourself | DRY) است. بر اساس این اصل که در برنامهنویسی وجود دارد، برنامهنویس نباید یک یا چند خط کد را در مکانهای مختلف برنامه خود تکرار کند. در این راستا، برنامهنویسان معمولا از برنامهنویسی «تابعی» (Functional Programming) یا «شیگرا» (Object Oriented) استفاده میکنند. در قطعه کدهای ارائه شده تا این لحظه در مطلب آموزش ساخت ربات اینستاگرام با پایتون چند خط کد وجود دارد که هم در برنامه کاربردی و هم در کد تست تکرار شده است.
قرار دادن کدهای تکراری در پروژهها در حالت کلی اتفاقی بد و منفی است و در پروژه مطلب آموزش ساخت ربات اینستاگرام با پایتون به طور ویژهای بدتر محسوب میشود. زیرا کد سلنیوم به عناصر «رابط کاربری» (User Interface) وابسته است و عناصر رابط کاربری معمولا زیاد تغییر داده میشوند. هنگامی که عناصر رابط کاربری تغییر میکنند و نیاز به تغییر و به روز رسانی کد ایجاد میشود، بحث Page Object Pattern مطرح میشود. با این الگو (Pattern)، کلاسهای شی صفحه (Page Object Classes) برای مهمترین صفحات یا قسمتها (Fragments) ساخته میشوند و در واقع رابطهایی را شکل میدهند که برای برنامه قابل درک است. با در نظر داشتن این موضوع، میتوان کد بالا را بازنویسی کرد و کلاسهای HomePage و LoginPage را ساخت
This media is not supported in your browser
VIEW IN TELEGRAM
آشنایی با InstaPy
«اینستاپای» (InstaPy) بزرگترین و محبوبترین ابزار خودکارسازی موجود برای اینستاگرام به شمار میآید که به به صورت رایگان در دسترس است. طیف وسیعی از ویژگیها وجود دارد که منجر شدهاند اینستا به ابزاری درجه یک برای افزایش تعداد دنبال کنندگان در اینستاگرام مبدل شود. در بخش بعدی، آموزش ساخت ربات اینستاگرام با پایتون و اینستاپای ارائه میشود.
«اینستاپای» (InstaPy) بزرگترین و محبوبترین ابزار خودکارسازی موجود برای اینستاگرام به شمار میآید که به به صورت رایگان در دسترس است. طیف وسیعی از ویژگیها وجود دارد که منجر شدهاند اینستا به ابزاری درجه یک برای افزایش تعداد دنبال کنندگان در اینستاگرام مبدل شود. در بخش بعدی، آموزش ساخت ربات اینستاگرام با پایتون و اینستاپای ارائه میشود.
آموزش ساخت ربات اینستاگرام با پایتون و InstaPy
در این بخش، آموزش ساخت ربات اینستاگرام با پایتون و ابزار اینستاپای ارائه شده است. این ربات میتواند به صورت خودکار لایک بزند، افراد را دنبال و برای پستهای مختلف نظر درج کند. در این راستا، ابتدا باید اینستاپای را نصب کرد. دستور زیر کار نصب اینستاپای (InstaPy) را انجام میدهد.
در این بخش، آموزش ساخت ربات اینستاگرام با پایتون و ابزار اینستاپای ارائه شده است. این ربات میتواند به صورت خودکار لایک بزند، افراد را دنبال و برای پستهای مختلف نظر درج کند. در این راستا، ابتدا باید اینستاپای را نصب کرد. دستور زیر کار نصب اینستاپای (InstaPy) را انجام میدهد.
This media is not supported in your browser
VIEW IN TELEGRAM
خوب خواهد بود اگر یک ربات به جای ما پیجمان ار مدیریت کند! افزایش دنبال کننده و تعامل با دیگران را به عهده بگیرد. در این آموزش ساخت ربات اینستاگرام با پایتون، برنامهنویسی ربات را از پایه فراخواهید گرفت. مهمتر این که روش مورد استفاده را میتوانید برای شبکههای اجتماعی دیگر نیز استفاده کنید. آموزش ساخت ربات اینستاگرام یک آموزش حیاتی برای متخصصین برنامه نویسی و داده کاوی و هوش مصنوعی است.
همچنین کارآفرینان و صاحبان کسب و کار خوب است این آموزش را ببینند تا از امکانات موجود آگاهی پیدا کنند. اما چرا؟
اینستاگرام امروز نزدیک به یک و نیم میلیارد کاربر دارد و خود به تنهایی یک جهان است. کسب و کارها نمیتوانند از فعالیت در آن غافل باشند. فعالیت در یک صفحه بزرگ و مدیریت کاربران متعدد معمولا کاری زمان بر و مستلزم هزینه نیروی انسانی زیاد است. با استفاده از ربات میتوان این هزینه را کاهش داد. از زمان به دست آمده میتوان برای تحلیل بیشتر استفاده کرد.
اینستاگرام امروز نزدیک به یک و نیم میلیارد کاربر دارد و خود به تنهایی یک جهان است. کسب و کارها نمیتوانند از فعالیت در آن غافل باشند. فعالیت در یک صفحه بزرگ و مدیریت کاربران متعدد معمولا کاری زمان بر و مستلزم هزینه نیروی انسانی زیاد است. با استفاده از ربات میتوان این هزینه را کاهش داد. از زمان به دست آمده میتوان برای تحلیل بیشتر استفاده کرد.
This media is not supported in your browser
VIEW IN TELEGRAM
افزایش فالوورهای اینستاگرام با ربات پایتون
رشد مخاطبان در شبکههای اجتماعی کاری پر هزینه و پرمشقت است. انجام این کار برای افرادی که تمایل به افزایش جمعیت مخاطبانی با زمینه فعالیت مرتبط و علایق مشترک با خود دارند، دشوارتر نیز میشود. «فابیو نِوِس» (Fábio Neves) در مطلبی با عنوان «Increase your Instagram followers with a simple Python bot»، به موضوع چگونگی افزایش فالوورهای اینستاگرام می پردازد.
رشد مخاطبان در شبکههای اجتماعی کاری پر هزینه و پرمشقت است. انجام این کار برای افرادی که تمایل به افزایش جمعیت مخاطبانی با زمینه فعالیت مرتبط و علایق مشترک با خود دارند، دشوارتر نیز میشود. «فابیو نِوِس» (Fábio Neves) در مطلبی با عنوان «Increase your Instagram followers with a simple Python bot»، به موضوع چگونگی افزایش فالوورهای اینستاگرام می پردازد.
اینستاگرام همواره گزینه خوبی برای تبلیغ تصاویر است، اما گاه جمعیت فالوورهای فرد بسیار کم است. از این رو، بسیاری از افرادی که زمانی را به ارسال مطلب به صورت منظم در اینستاگرام اختصاص میدهند، پس از مدتی انگیزهای برای فعالیت به شکل منظم و برنامهریزی شده ندارند.
نرمافزارهای گوناگونی برای ردگیری کردن افرادی که فرد را در اینستاگرام آنفالو میکنند وجود دارد. یک سال پیش، هنگامی که جمعیت فالوورهای اینستاگرام شخصیم به دلایل مبهمی به ناگهان ریزش کرد، یکی از این برنامهها را نصب کردم. پس از اندکی پژوهش، متوجه شدم که برخی از کاربران برای افزایش فالوور «خزش» (crawl) میکنند. آنها تنها با انگیزه دنبال شدن متقابل (follow back)، به ارسال «نظر» (کامنت | Comment)، لایک و دنبال کردن افراد میپردازند
نرمافزارهای گوناگونی برای ردگیری کردن افرادی که فرد را در اینستاگرام آنفالو میکنند وجود دارد. یک سال پیش، هنگامی که جمعیت فالوورهای اینستاگرام شخصیم به دلایل مبهمی به ناگهان ریزش کرد، یکی از این برنامهها را نصب کردم. پس از اندکی پژوهش، متوجه شدم که برخی از کاربران برای افزایش فالوور «خزش» (crawl) میکنند. آنها تنها با انگیزه دنبال شدن متقابل (follow back)، به ارسال «نظر» (کامنت | Comment)، لایک و دنبال کردن افراد میپردازند
This media is not supported in your browser
VIEW IN TELEGRAM
نکاتی پیرامون کدنویسی
برای نوشتن این کد از پایتون (نسخه ۳.۷)، سلنیوم، یک مرورگر وب (کروم | Chrome) و البته اکانت اینستاگرام استفاده شده است. چشمانداز کوتاهی از کاری که ربات ارائه میکند در زیر وجود دارد.
باز کردن مرورگر و وارد شدن به اکانت اینستاگرام فرد
برای هر هشتگ در لیست هشتگها، ربات یک صفحه را باز و اولین تصویر موجود در آن را کلیک میکند تا باز شود.
در ادامه، ربات به لایک، دنبال کردن و نظردهی برای تصویر دارای هشتگ موجود در لیست هشتگها پرداخته و به تصویر بعدی میرود. این کار در یک حلقه تکرار ۲۰۰ تایی انجام میشود (عدد قابل تنظیم است).
لیستی با همه کاربرانی که فرد فالو میکند را با استفاده از ربات ذخیره میکند.
برای نوشتن این کد از پایتون (نسخه ۳.۷)، سلنیوم، یک مرورگر وب (کروم | Chrome) و البته اکانت اینستاگرام استفاده شده است. چشمانداز کوتاهی از کاری که ربات ارائه میکند در زیر وجود دارد.
باز کردن مرورگر و وارد شدن به اکانت اینستاگرام فرد
برای هر هشتگ در لیست هشتگها، ربات یک صفحه را باز و اولین تصویر موجود در آن را کلیک میکند تا باز شود.
در ادامه، ربات به لایک، دنبال کردن و نظردهی برای تصویر دارای هشتگ موجود در لیست هشتگها پرداخته و به تصویر بعدی میرود. این کار در یک حلقه تکرار ۲۰۰ تایی انجام میشود (عدد قابل تنظیم است).
لیستی با همه کاربرانی که فرد فالو میکند را با استفاده از ربات ذخیره میکند.
se last 2 lines out, if you don't get a pop up asking about notifications
به منظور استفاده از کروم با سلنیوم، نیاز به نصب «کرومدرایور» (ChromeDriver) (+) است. این فرآیند بسیار ساده خواهد بود. برای این کار، ابتدا بایدChromeDriver را نصب و سپس مسیر موجود در کد بالا را با مسیر (Path) صحیح جایگزین کرد.
در سلول شماره ۳، باید رشتهها را با نام کاربری و گذرواژه آن جایگزین کرد. این کار برای آن است که ربات بتواند در فیلدهای نمایش داده شده اطلاعات را تایپ کند. ممکن است که برخی مخاطبان تاکنون متوجه شده باشند که هنگام اجرای سلول ۲، کروم یک تب جدید باز میکند. پس از گذرواژه، دکمه Login به عنوان یک «شی» (Object) تعریف شده و با خط کدی که در ادامه آمده روی آن کلیک میشود.
به منظور استفاده از کروم با سلنیوم، نیاز به نصب «کرومدرایور» (ChromeDriver) (+) است. این فرآیند بسیار ساده خواهد بود. برای این کار، ابتدا بایدChromeDriver را نصب و سپس مسیر موجود در کد بالا را با مسیر (Path) صحیح جایگزین کرد.
در سلول شماره ۳، باید رشتهها را با نام کاربری و گذرواژه آن جایگزین کرد. این کار برای آن است که ربات بتواند در فیلدهای نمایش داده شده اطلاعات را تایپ کند. ممکن است که برخی مخاطبان تاکنون متوجه شده باشند که هنگام اجرای سلول ۲، کروم یک تب جدید باز میکند. پس از گذرواژه، دکمه Login به عنوان یک «شی» (Object) تعریف شده و با خط کدی که در ادامه آمده روی آن کلیک میشود.