Hamed Fakoori
Hamed Fakoori
خواندن ۸ دقیقه·۶ ماه پیش

ربات کلیکر خودکار (همستر کامبت)

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

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

این ربات چی کار میکنه ؟ این ربات با استفاده از توکن احراز هویت شما که مشخص میکنه شما کی هستید میاد به جای شما کلیک میکنه و در عین حال پروفیت رو هم جمع میکنه که خیلی خوبه ،اما نکته ناراحت کننده ای هم وجود داره که ممکنه اکانت شما بن بشه ، همه چیز سعی شده که به گونه ای باشه که کمترین احتمال بن شدن وجود داشته باشه ولی خب معلوم نیست و ممکنه بن کنه ، تا فعلا که بن نشدیم خبر خوب اینه 😁؛حالا بریم در ادامه ببینیم باید چه کار کنیم که بتونیم از این ربات استفاده کنیم .
نکته مهمی که هست اگر از این ربات استفاده کردید تا حدود 20 دقیقه یا 30 دقیقه وارد ربات تلگرامی نشید که خطر بن شدن و مشکلات دیگه کمتر بشه
این اسکریپت به صورت رندوم یه زمانی بین 30 دقیقه تا 3 ساعت صبر میکنه و درخواست بعدی رو میزنه اگر فکر میکنه زمان زیادی هست (که هست برای احتیاط بیشتر اینطوری هست ) تو مراحل پایانی که میخوایم اسکریپت رو ران کنیم بهت میگم چطور میتونی تغییرش بدی

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



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

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

  • برای دانلود کافی یه بریم توی این لینک و از قسمت کد ، دانلود با فرمت زیپ رو بزنیم.
روی Download Zip بزنید تا دانلود شروع بشه
روی Download Zip بزنید تا دانلود شروع بشه

حالا که دانلود انجام شد فایل رو توی پوشه ای که میخواهیم اکسترکت میکنیم و به همین راحتی به کد ها دسترسی پیدا میکنیم

  • برای دانلود با استفاده از دستور گیت کافیه گیت رو روی سیستم تون داشته باشید ، و این مراحل رو با من طی کنید .
  1. وارد پوشه ای که میخواهید پروژه رو توش دانلود کنید بشید و بعد تریمنال رو باز کنید.
  2. این کد رو توی محیط ترمینال بزنید تا کلون کردن پروژه شروع بشه
git clone https://github.com/HamedFakoori/clicker

حالا میبینی که یه پوشه به اسم clicker توی جایی که میخواستی اضافه شده که شامل کد های پروژه میشه:)

نصب پیش نیاز های اسکریپت

توی این قسمت با نحوه نصب پیش نیاز های این اسکریپت و آماده کردن اون برای شروع آشنا میشیم.

اگر دوست نداری این مراحل رو انجام بدی میتونی مستقیم وارد مرحله بعد بشی (به دست آوردن اطلاعات حساب بازی یکم اسکرول کن به پایین ) و فقط توکن و اطلاعاتی که برای کلیک لازم هست رو به دست بیاری و از اون جایی که الان این اسکریپت روی یه سرور هست بدیش به ما تا ما برات روی سرور بزاریم که حتی وقتی ما خوابیم هم برامون کلیک کنه و مجبور نشی هزینه ای برای سرور بپردازی .
  • بریم سراغ موتور محرک این اسکریپت

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

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

  • یه محیط مجازی بسازیم
برای اینکه پروژه توی یه محیط ایزوله باشه میتونیم یه محیط مجازی بسازیم (اگه دوست نداری میتونی این مرحله رو انجام ندی)

برای اینکار دوباره وارد ترمینال بشید (توی همون پوشه پروژه) و کد زیر رو بزنید.

کد های بعدی هم باید توی ترمینال زده بشه
python -m venv .venv
  • محیط مجازی رو فعال کنیم

برای این کار از کد زیر استفاده میکنیم

.venv\Scripts\activate ویندوز source venv/bin/activate لینوکس و مک
  • بسته ها و پکیج های لازم رو نصب میکنیم
تقریبا برای هر برنامه و اسکریپت پایتونی یا هر زبان برنامه نویسی دیگری معمولا یه سری پیش نیاز ها و بسته ها وجود داره که اون برنامه اون ها رو لازم داره تا بتونه کار خودشو شروع کنه که ما با این دستور میتونیم پیش نیاز های این پروژه رو نصب کنیم.
pip install -r requirements.txt

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

چرا شروع نمیکنیم ؟ صبر کنید همونطور که گفتم نیازه که اطلاعات حساب رو به دست بیاریم که برای این کار باید مراحل زیر رو طی کنیم.

به دست آوردن اطلاعات حساب بازی

  • وارد اکانتی که میخوایم میشیم؛ البته روی یه مرورگر!
  • میریم داخل بات همستر و کلید f12 رو میزنیم یا اینکه راست کلیک میکنیم یا inspect رو انتخاب میکنیم.
  • حالا میریم داخل تب source و قسمت page و یه بار رفرش میکنیم
  • حالا فایل های زیادی خواهیم دید، فایل telegram-web-app.js رو باز میکنیم.
این فایل توی این قسمت وجود داره!
این فایل توی این قسمت وجود داره!
ممکنه پوشه کلیکر رو نبینید ، که باید بات همستر رو استارت کنید و اون موقع این پوشه رو میبینید ، در همین حال که بات بازه میتونید مراحل بعدی رو انجام بدید و نیازی نیست بات بسته باشه
  • باید قسمتی از کد تغییر کنه :
Object.defineProperty(WebApp, 'platform', { get: function () { return webAppPlatform; }, enumerable: true, });

کد بالا را در فایل جستجو کنید (احتمالا توی خط 1795باشه) حالا این کد رو با کد زیر جابجا میکنیم

Object.defineProperty(WebApp, 'platform', { get: function () { return 'ios'; }, enumerable: true, });

حالا که این کار را کردیم تغییرات را ذخیره میکنیم ، برای این کار کلید های کنترل و s را فشار میدهیم .

ممکن است کلید های کنترل و s این کار را برای شما انجام ندهند که میتوانید روی استم فایل راست کلیک کرده و override content را انتخاب کنید ، در ضمن ممکن است در این مرحله محلی برای ذخیره تغییرات از شما بخواهد که یک پوشه را انتخاب کنید که میتوانید هر پوشه ای که خواستید انتخاب کنید ، فقط دقت کنید که این پوشه پاک نشود.
  • برید به تب network و یه بار دیگه صفحه رو رفرش کنید
  • حالا ربات رو استارت کنید و صبر کنید که بالا بیاد
  • حالا چند تا ضربه بزنید (روی سکه ) تا درخواست های جدید مربوط به این ضربه ها ارسال بشه و به شما نمایش داده بشن
اولین tap که میبینید درخواست من است که باید روبه روی آن عدد 200 باشد
اولین tap که میبینید درخواست من است که باید روبه روی آن عدد 200 باشد


  • حالا روی اون درخواست کلیک کنید تا جزئیاتش نمایش داده بشن.
  • اگه یکم اسکرول کنیم به پایین قسمت Request headers رو مشاهده میکنیم از اون قسمت کلید احراز هویت رو کپی میکنیم
کلید رو از قسمت authorization کپی میکنیم
کلید رو از قسمت authorization کپی میکنیم
قسمت Bearer رو نباید کپی کرد

حالا میریم به تب Response و اطلاعات زیر رو پیدا میکنیم

MaxTaps tapsRecoverPerSec earnPerTap availableTaps
نیازی به پیدا کردن lastRequestTime نیست بزارید همون عدد قبلی باشه !

مثلا اینجا قسمتی از این اطلاعات رو میبینیم

اطلاعاتی که میخواهیم توی این قسمت مشخصه که اینها بعضی از اونا هستند
اطلاعاتی که میخواهیم توی این قسمت مشخصه که اینها بعضی از اونا هستند

حالا این اطلاعات رو داخل فایل data.json قرار بدید برای مثال این چیزی هست که در نهایت باید باشه (برای شما قطعا متفاوت هست اما در کل چیزی مشابه این باید باشد )

{ &quotName&quot:{ &quotkey&quot: &quotکلید احراز هویت که به دست آورده بودیم&quot, &quotMaxTaps&quot: 6000, &quottapsRecoverPerSec&quot: 3, &quotlastRequestTime&quot: 1718388250, &quotearnPerTap&quot: 10, &quotavailableTaps&quot: 0 } }

حالا که این اطلاعات رو به دست آوردی میتونی پروژه رو ران کنی با این دستور

قبل اون همینطور که گفتم بریم ببینیم چطور میتونیم فاصله زمانی بین درخواست ها رو کم کنیم :
توی خط 101 کد اومدیم یه عدد رندوم انتخاب کردیم این عدد همون زمانی هست که بین هر درخواست توقف کنه که اینجا اولین قسمت 1800 و بعدش 10600 هست که تعداد ثانیه ها هست 1800 مینیموم زمانی هست که باید توقف کنه و 10600 بیشترین زمانی هست که میتونه توقف کنه که در نهایت یه عدد رندوم بین این دو تا انتخاب میشه شما میتونی با تغییر این دو عدد زمانی که توقف میکنه رو تغییر بدی مثلا اینجا میگم که از 30 دقیقه تا یک ساعت صبر کنه و درخواست بعدی رو بزنه
sleep_time = random.randint(1800,3600)

ترمینال رو داخل پوشه پروژه باز کن و کد زیر رو بزن

python app.py

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

localhost:8000 localhost:8000/status

حالا اگر بخوای دائما اسکریپت ران باشه میتونی بزاریش روی یه سرور که من لیارا رو پیشنهاد میکنم که بدون کار خاصی و خیلی سریع ، میتونی یه پروژه بیاری بالا :)

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

hamster kombattelegram botbotpython
یه برنامه نویس ساده !
شاید از این پست‌ها خوشتان بیاید