Clone
1
Home ms
Tirsvad edited this page 2026-11-03 03:49:07 +01:00

Hari 50 - Tinder auto find match (Bahasa Malaysia)

English · Dansk

Matlamat: mengautomasikan log masuk dan "like" profil di TinDog menggunakan Python dan Selenium. Etika dahulu: beritahu pasangan anda bahawa anda menggunakan automasi, dan patuhi had harian (TinDog 20, Tinder percuma 100).

Langkah 1 - Lihat laman web secara manual

Laman utama

Apa yang kita pelajari: sebelum menulis kod, klik sendiri dan catat elemen yang perlu disasarkan. Locator yang baik datang daripada mengenali halaman.

Langkah 2 - Pergi ke halaman log masuk

Modal log masuk

Apa yang kita pelajari: driver.get, locator XPath (locators.py) dan menunggu dengan WebDriverWait + element_to_be_clickable dan bukannya sleep tetap. Ini mengelakkan NoSuchElementException pada halaman yang perlahan.

Langkah 3 - Tetingkap timbul Facebook

Tetingkap Facebook

Apa yang kita pelajari: log masuk membuka tetingkap pelayar kedua. Kita bertukar dengan driver.window_handles dan switch_to.window, mengisi borang, kemudian kembali. Kelayakan disimpan dalam pemboleh ubah persekitaran, bukan dalam kod.

Langkah 4 - Tutup semua permintaan

Lokasi (04), pemberitahuan (05), kuki (06).

Kuki

Apa yang kita pelajari: tetingkap modal menghalang semua yang di belakangnya. Kita klik ALLOW, NOT INTERESTED dan I ACCEPT, dan langkau yang tidak muncul (TimeoutException dikendalikan dan dilog).

Langkah 5 - Tekan Like

Like Tetingkap padanan

Apa yang kita pelajari: pengecualian sebagai kawalan aliran untuk UI yang tidak stabil: NoSuchElementException bermaksud "masih memuat, tunggu 2 saat dan cuba lagi"; ElementClickInterceptedException bermaksud "tetingkap padanan menghalang, klik BACK TO TINDER". Jeda antara "like" menjadikan bot kurang ketara. Gelung berhenti pada had yang ditetapkan.

Selesai

Pemodenan berbanding penyelesaian terdahulu

  • Pakej src/ dengan satu fungsi bagi setiap langkah dan bukannya satu kelas dengan sleep.
  • Penantian eksplisit; semua locator di satu tempat.
  • Log masuk Facebook (seperti pelajaran) dan bukannya Google; tetapan dalam dataclass Settings; ujian unit dengan pemacu palsu.
  • Tiada from constants import *, tiada longgokan HTML.