Menej Instagram (2/5)

miyaz ghayda
miyazghayda
Published in
4 min readMay 26, 2018

Melanjutkan story sebelumnya yang melakukan auto post Instagram (IG), tulisan kedua ini akan membuat auto follow. Akun miyazghayda akan memilih beberapa celebgram dengan followers > 10K (selanjutnya disebut akun idola/idola), followers tersebutlah yang akan difollow oleh miyazghayda dengan harapan akan mendapat follback. Fitur ini dapat dikombinasikan dengan auto comment, jadi jika tetiba akun IG Anda mendapat follower(s) baru dengan komentar generik seperti “folbek kaka”, maka Anda sudah tidak perlu berbesar hati lagi karena kemungkinan besar itu adalah bot. hehehe.

Alur sistem adalah seperti ini.

Untuk mengakomodir alur tersebut, akan ditambahkan dua tabel yaitu idols dan vassals.

Tabel idols berisi fields.

  1. id (Primary Key yang digunakan dalam sistem)
  2. account_id (akun yang dimenej, dalam hal ini miyazghayda)
  3. member_id (akun idola)
  4. active (true jika member_id masih menjadi akun idola)

Tabel vassals akan menampung data followers akun idola, dengan fields.

  1. id
  2. idol_id (field ini adalah foreign key dari tabel idols)
  3. account_id (follower akun idola)
  4. followed (true jika telah difollow)
  5. active

Relasi antar tabel seperti ini

Relasi Tabel

Generate model.

$ bin/cake bake model all

Jika pada story sebelumnya kita menambahkan data langsung ke tabel, kali ini akan diambil pendekatan yang sedikit lebih “bersih”, kita membuat Command Console CakePHP yang menambahkan data akun idol dan merelasikan dengan akun miyazghayda. Menggunakan command tersebut, cukup diinput username akun miyazghayda dan username akun idol, misalnya _febrian.

Pemilihan akun idola tidak ada panduannya, namun untuk efektivitas sistem, secara umum dapat digunakan pertimbangan:

  1. Tema yang sama dengan akun kita
  2. Jumlah followers

Untuk membuat command, buat sebuah file src/Command/AddidolCommand.php.

Sebagai catatan, Anda mungkin perlu mereferensi halaman ini untuk dapat mengakses class property yang disediakan oleh library Instagram-API. Selengkapnya mengenai contoh penggunaan library tersebut ada di sini.

Jalankan command.

$ bin/cake addidol miyazghayda _febrian

Jika berhasil maka akan muncul pesan.

Berhasil menambahkan _febrian sebagai akun idola miyazghayda

Untuk menguji apakah telah tersimpan dalam tabel, jalankan.

$ mysql -u miyazghayda -p
mysql> USE photo_socmed;
mysql> SELECT id, pk, username, active FROM accounts WHERE 1 = 1;
Hasil Query Tabel accounts

Langkah berikutnya adalah mengambil data follower dari akun idola _febrian. Langkah ini akan memakan waktu, bergantung seberapa banyak followers akun idola.

Untuk membuat command, buat file src/Command/AddvassalCommand.php.

Jalankan command dengan perintah.

$ bin/cake addvassal miyazghayda _febrian

Sedangkan untuk melihat apakah daftar follower(s) akun idola telah masuk dalam tabel.

mysql> SELECT vassals.id, accounts.username, vassals.followed, vassals.active FROM idols LEFT JOIN vassals ON vassals.idol_id = idols.id LEFT JOIN accounts ON accounts.id = vassals.account_id WHERE idols.account_id = 1 AND idols.member_id = 2;
Hasil Query

Langkah terakhir, memfollow satu per satu akun tersebut. Sekedar saran, tentukan maksimal follow/hari, misal 100/hari, 250/hari, 500/hari atau 1000/hari. Hal tersebut untuk menghindari akun di banned oleh IG. Kalo kata internet, nilai tersebut bergantung dari umur akun, aktivitas, dll, jadi sebaiknya Anda mencoba dan menentukan sendiri berapa banyak akun yang difollow/hari.

Dalam sistem yang akan dibuat, jika akan memfollow 100 akun dan terdapat 2 akun idola, maka akan difollow 50 akun dari masing-masing akun idola.

Buat script src/Command/FollowingCommand.php.

Dengan perintah ini.

$ bin/cake following miyazghayda 100

Hasilnya akan seperti ini.

Proses Following

Perubahan pada akun miyazghyada dari semula (perhatikan bagian 10 following).

Menjadi 97 following.

Dari 10 following + 100 = 97 following? Hal tersebut terjadi karena terdapat beberapa akun private yang membutuhkan pemilik akun untuk secara manual meng-approve permintaan follow akun miyazghayda. Jika akun private tersebut telah meng-approve, maka otomatis nilai following pada akun miyazghayda akan berubah.

Proses tersebut dapat diulangi sebanyak yang dimau, atau dibuat terjadwal menggunakan cron job namun perlu diperhatikan IG dapat memblock akun yang terlalu agresif. Karenanya silahkan mencari berapa banyak following yang akan dilakukan dalam sehari, sesuai dengan akun yang dimenej. Sampai jumpa di story berikutnya.

--

--