این کد، عملکردی مشابه کد بالا دارد، با این تفاوت که Home Page و Login Page به صورت کلاسها نمایش داده شدهاند. کلاسها، مکانیزمهای لازم برای پیدا کردن دادهها در رابط کاربری و دستکاری آنها را کپسوله کردهاند. مورد دیگری که باید به آن توجه داشت، آن است که هنگام جا به جایی به صفحهای دیگر با استفاده از یک شی صفحه (Page Object)، این کد، Page Object برای صفحه جدید را باز میگرداند. «متدها» (Methods) و «اکسسورهایی» (Accessors) نیز وجود دارند که میتوانند هر آنچه یک انسان انجام میدهد را انجام دهند
باید به مقدار بازگردانده شده توسط go_to_log_in_page() توجه داشت. اگر کلاس دیگری به نام FeedPage وجود داشت، تابع login() از کلاس LoginPage نمونهای از آن را (return FeedPage()) باز میگرداند. در ادامه، چگونگی استفاده از Page Object Pattern نمایش داده شده است.
اکنون کد بهبود یافته است و تست بالا را میتوان به صورت زیر بازنویسی کرد.
با تغییرات انجام شده در کدها، حتی در صورتی که تغییراتی در رابطه کاربری برنامه اتفاق بیفتد، دیگر نیازی به تغییر کدهای تست نیست. اکنون که مفهوم و چگونگی کار با سلنیوم (Selenium) و Page Object Pattern تشریح و شفاف شد، میتوان به آموزش ساخت ربات اینستاگرام با پایتون پرداخت. اما پیش از ارائه آموزش ساخت ربات اینستاگرام با پایتون ابزار اینستاپای (Instapy) به طور اجمالی مورد بررسی قرار خواهد گرفت.
This media is not supported in your browser
VIEW IN TELEGRAM
آشنایی با InstaPy
«اینستاپای» (InstaPy) بزرگترین و محبوبترین ابزار خودکارسازی موجود برای اینستاگرام به شمار میآید که به به صورت رایگان در دسترس است. طیف وسیعی از ویژگیها وجود دارد که منجر شدهاند اینستا به ابزاری درجه یک برای افزایش تعداد دنبال کنندگان در اینستاگرام مبدل شود. در بخش بعدی، آموزش ساخت ربات اینستاگرام با پایتون و اینستاپای ارائه میشود.
«اینستاپای» (InstaPy) بزرگترین و محبوبترین ابزار خودکارسازی موجود برای اینستاگرام به شمار میآید که به به صورت رایگان در دسترس است. طیف وسیعی از ویژگیها وجود دارد که منجر شدهاند اینستا به ابزاری درجه یک برای افزایش تعداد دنبال کنندگان در اینستاگرام مبدل شود. در بخش بعدی، آموزش ساخت ربات اینستاگرام با پایتون و اینستاپای ارائه میشود.
آموزش ساخت ربات اینستاگرام با پایتون و InstaPy
در این بخش، آموزش ساخت ربات اینستاگرام با پایتون و ابزار اینستاپای ارائه شده است. این ربات میتواند به صورت خودکار لایک بزند، افراد را دنبال و برای پستهای مختلف نظر درج کند. در این راستا، ابتدا باید اینستاپای را نصب کرد. دستور زیر کار نصب اینستاپای (InstaPy) را انجام میدهد.
در این بخش، آموزش ساخت ربات اینستاگرام با پایتون و ابزار اینستاپای ارائه شده است. این ربات میتواند به صورت خودکار لایک بزند، افراد را دنبال و برای پستهای مختلف نظر درج کند. در این راستا، ابتدا باید اینستاپای را نصب کرد. دستور زیر کار نصب اینستاپای (InstaPy) را انجام میدهد.
ویژگیهای اساسی اینستاپای
اکنون، میتوان کد بالا را با استفاده از InstaPy بازنویسی کرد تا بتوان دو گزینه ممکن را با هم مقایسه کرد. ابتدا باید فایل پایتون دیگری ساخته و قطعه کد زیر در آن وارد شود.
اکنون، میتوان کد بالا را با استفاده از InstaPy بازنویسی کرد تا بتوان دو گزینه ممکن را با هم مقایسه کرد. ابتدا باید فایل پایتون دیگری ساخته و قطعه کد زیر در آن وارد شود.
from instapy import InstaPy InstaPy(username="<your_username>", password="<your_password>").login(
در کد بالا، تنها نیاز به جایگذاری نام کاربری و رمز عبور است و پس از آن، همین دو خط کد کاری را انجام میدهد که کدهای قبلی انجام میدادند. با وجود آنکه نتایج این دو قطعه کد مشابه با یکدیگر است، ساز و کار به وقوع پیوسته در آنها شبیه به هم نیست. علاوه بر وارد شدن به پروفایل، اینستاپای کارهای دیگری مانند بررسی اتصال اینترنت و بررسی وضعیت سرورهای اینستاگرام را انجام میدهد. این مورد به طور مستقیم در مرورگر یا در سوابق (Log) قابل مشاهده است.
INFO [2019-12-
INFO [2019-12-
INFO [2019-12-17 22:03:19] [username] -- Connection Checklist [1/3] (Internet Connection Status) INFO [2019-12-17 22:03:20] [username] - Internet Connection Status: ok INFO [2019-12-17 22:03:20] [username] - Current IP is "17.283.46.379" and it's from "Germany/DE" INFO [2019-12-17 22:03:20] [username] -- Connection Checklist [2/3] (Instagram Server Status) INFO [2019-12-17 22:03:26] [username] - Instagram WebSite Status: Currently Up
اکنون زمان آن رسیده است که اسکریپت نوشته شده برای ربات، کارهایی جالبتر از وارد شدن به حساب کاربری فرد را انجام دهد. بدین منظور، فرض میشود که حساب کاربری که ربات برای آن ساخته شده، پیرامون خودروها است و بنابراین، ربات تمایل به دنبال کردن و تعامل با کاربرانی دارد که به خودروها علاقهمند هستند. در این راستا و برای شروع، ربات میتواند با لایک کردن پستهایی که دارای تگ bmw# یا mercedes# هستند شروع کند. بدین منظور، از متد like_by_tags() استفاده میشود.
from instapy import InstaPy session = InstaPy(username="<your_username>", password="<your_password>") session.login() session.like_by_tags(["bmw", "mercedes"], amount=5)