Cara membuat bot WhatsApp AI tanpa third-party API

11-Oct-2025

Pembuat : Admin Mobile Faculty

Kategori : Media Pembelajaran

Cara membuat bot WhatsApp AI tanpa third-party API
WhatsApp adalah salah satu platform komunikasi paling populer, dan banyak orang ingin membuat bot WhatsApp AI untuk berbagai keperluan, seperti customer service otomatis, chatbot pribadi, atau notifikasi otomatis. Kali ini, kita akan membahas cara membuat bot WhatsApp AI tanpa menggunakan API pihak ketiga, hanya dengan Python dan beberapa pustaka open-source.

🔧 1. Persiapan Awal

Sebelum kita mulai, pastikan Anda sudah menginstal Python dan beberapa pustaka yang diperlukan.

📌 Persyaratan

  • Python 3.x
  • Selenium (untuk mengendalikan WhatsApp Web)
  • Webdriver untuk browser (contoh: ChromeDriver)
  • OpenAI API (untuk AI chatbot opsional)
  • Flask (untuk menjalankan bot secara lokal)

📥 Instalasi Pustaka yang Dibutuhkan

Buka terminal atau command prompt, lalu jalankan perintah berikut:
bash
pip install selenium flask openai
Jangan lupa untuk mengunduh ChromeDriver yang sesuai dengan versi Google Chrome Anda dari: 🔗 https://chromedriver.chromium.org/downloads Letakkan chromedriver.exe di dalam folder proyek Anda.

🚀 2. Membuat Bot WhatsApp dengan Selenium

Langkah 1: Menjalankan WhatsApp Web dengan Selenium

Buat file whatsapp_bot.py dan tambahkan kode berikut:
python
from selenium import webdriver from selenium.webdriver.common.keys import Keys import time# Lokasi ChromeDriver (sesuaikan dengan sistem Anda) CHROMEDRIVER_PATH = "./chromedriver"# Inisialisasi Selenium options = webdriver.ChromeOptions() options.add_argument("--user-data-dir=./whatsapp_profile") # Menyimpan sesi login driver = webdriver.Chrome(executable_path=CHROMEDRIVER_PATH, options=options) # Buka WhatsApp Web driver.get("https://web.whatsapp.com") print("Silakan scan QR Code di WhatsApp Web.") # Tunggu sampai user login time.sleep(15)
Saat pertama kali menjalankan kode ini, pindai QR Code di WhatsApp Web dengan ponsel Anda.

Langkah 2: Kirim Pesan Otomatis ke Kontak

Tambahkan fungsi untuk mengirim pesan ke seseorang di WhatsApp:
python
def send_message(contact_name, message): """Mengirim pesan ke kontak yang dituju""" try: # Cari kontak di bilah pencarian search_box = driver.find_element("xpath", "//div[@contenteditable=true]") search_box.click() search_box.send_keys(contact_name) search_box.send_keys(Keys.ENTER) time.sleep(2)# Ketik pesan message_box = driver.find_element("xpath", "//div[@contenteditable=true][@data-tab=6]") message_box.click() message_box.send_keys(message) message_box.send_keys(Keys.ENTER)print(f"Pesan terkirim ke {contact_name}") except Exception as e: print(f"Error: {e}") # Contoh pengiriman pesan send_message("Nama Kontak", "Halo! Ini pesan otomatis dari bot WhatsApp AI.")

🤖 3. Integrasi AI untuk Membalas Pesan

Agar bot bisa membalas pesan secara otomatis, kita bisa menggunakan OpenAI API.

Langkah 1: Daftar API Key di OpenAI

  1. Buka https://openai.com
  2. Buat akun dan dapatkan API Key
  3. Simpan API Key untuk digunakan di skrip kita

Langkah 2: Tambahkan Fitur AI di Bot

Modifikasi whatsapp_bot.py agar bisa membaca pesan masuk dan membalasnya menggunakan AI.
python
import openai # Set API Key OpenAI openai.api_key = "your_openai_api_key" def get_ai_response(prompt): """Menghasilkan balasan dari AI berdasarkan input pengguna""" response = openai.ChatCompletion.create( model="gpt-3.5-turbo", messages=[{"role": "user", "content": prompt}] ) return response["choices"][0]["message"]["content"] def read_last_message(): """Membaca pesan terakhir dari obrolan aktif""" try: messages = driver.find_elements("xpath", "//div[@class=_21Ahp]") last_message = messages[-1].text return last_message except Exception as e: print(f"Error saat membaca pesan: {e}") return None def auto_reply(contact_name): """Membalas pesan secara otomatis""" while True: last_message = read_last_message() if last_message: print(f"Pesan dari {contact_name}: {last_message}") response = get_ai_response(last_message) send_message(contact_name, response) time.sleep(5) # Jalankan auto-reply ke kontak tertentu auto_reply("Nama Kontak")

📡 4. Menjalankan Bot Secara Lokal

Bot ini bisa berjalan terus-menerus di komputer atau server lokal. Jika ingin menjalankan bot dalam mode background di Linux, gunakan:
bash
nohup python whatsapp_bot.py &

🔒 5. Keamanan dan Batasan

  • Jangan gunakan untuk spam! WhatsApp bisa memblokir nomor yang mengirim pesan otomatis secara berlebihan.
  • Gunakan jeda waktu yang wajar untuk menghindari deteksi bot (misalnya time.sleep(5) setelah setiap pesan).
  • Selenium bisa berhenti bekerja jika WhatsApp Web mengubah strukturnya, jadi selalu perbarui XPath elemen.

🛠 6. Pengembangan Lanjutan

  • Integrasi dengan Database: Simpan pesan di SQLite atau MySQL untuk analisis lebih lanjut.
  • Dukungan Banyak Kontak: Ubah kode agar bisa membaca pesan dari beberapa kontak sekaligus.
  • Hosting di Cloud: Deploy bot di server seperti Vultr, Digital Ocean, atau AWS EC2 agar berjalan 24/7.

🚀 Kesimpulan

Dengan menggunakan Selenium dan OpenAI, kita bisa membuat bot WhatsApp AI tanpa menggunakan API pihak ketiga seperti Twilio atau WhatsApp Business API. Solusi ini lebih fleksibel untuk kebutuhan pribadi, tetapi tetap harus digunakan secara etis agar tidak melanggar kebijakan WhatsApp. Selamat mencoba! Jika ada pertanyaan atau kendala, silakan komentar. 😃🚀 untuk sertifikasi bnsp bisa ke backend atau AI generative Pengembangan bot WhatsApp AI menggunakan Selenium dan OpenAI menawarkan cara yang inovatif untuk mengotomatiskan interaksi di platform WhatsApp. Dengan memanfaatkan teknologi ini, pengguna dapat membuat bot yang dapat mengirim dan menerima pesan secara otomatis serta memberikan respons berbasis AI. Kami LSP memiliki skema pelatihan yang dirancang secara profesional, dengan instruktur berpengalaman, dan menyediakan sertifikat BNSP yang relevan untuk memperkuat kompetensi di bidang pengembangan backend, AI generatif, dan otomatisasi menggunakan API. Sertifikasi ini sangat dianjurkan bagi mereka yang ingin meningkatkan kredibilitas dan daya saing di industri teknologi informasi.