DEV Community

Hendra Bangun Dwi R
Hendra Bangun Dwi R

Posted on

Panduan Lengkap: Mengelola Playwright di Python (uv) \& Memindah Cache Browser ke Drive Lain

Playwright membutuhkan browser khusus (Chromium, Firefox, WebKit) yang ukurannya cukup besar (ratusan MB). Secara default, file ini disimpan di C:\Users\...\AppData\Local\ms-playwright, yang sering membuat Drive C cepat penuh.

Panduan ini akan menuntun Anda menginstal Playwright menggunakan uv, memindahkan lokasi penyimpanannya ke Drive E (atau drive lain), dan menjalankannya dengan benar.

1. Instalasi Playwright dengan uv

Saat menggunakan uv di Windows (terutama jika dicampur dengan WSL), disarankan menggunakan mode copy untuk menghindari masalah symlink.

Perintah Install:

uv add playwright --link-mode=copy
Enter fullscreen mode Exit fullscreen mode

2. Memindahkan Lokasi Browser (Agar Drive C Aman)

Kita akan mengubah lokasi penyimpanan default ke E:\atools\PythonData. Kita menggunakan Environment Variable agar pengaturan ini permanen.

Langkah-langkah:

  1. Buka PowerShell.
  2. Jalankan perintah berikut untuk menyimpan pengaturan secara permanen di sistem Windows Anda:
[System.Environment]::SetEnvironmentVariable('PLAYWRIGHT_BROWSERS_PATH', 'E:\atools\PythonData', 'User')
Enter fullscreen mode Exit fullscreen mode
  1. PENTING: Tutup PowerShell tersebut, lalu buka terminal/PowerShell yang baru agar pengaturan terbaca.

3. Mengunduh Browser ke Lokasi Baru

Setelah terminal baru dibuka, saatnya mengunduh browser. Playwright akan otomatis membaca pengaturan di atas dan meletakkan file di Drive E.

Perintah:

uv run playwright install
Enter fullscreen mode Exit fullscreen mode

Tunggu hingga proses download selesai.

4. Verifikasi (Memastikan Lokasi Sudah Benar)

Jangan sampai Anda mengira sudah pindah padahal masih di C. Gunakan script Python sederhana ini untuk mengecek.

Buat file cek_lokasi.py:

from playwright.sync_api import sync_playwright

with sync_playwright() as p:
    lokasi = p.chromium.executable_path
    print(f"\n[HASIL PENGECEKAN]")
    print(f"Browser ada di: {lokasi}")

    if "E:\\atools\\PythonData" in lokasi:
        print("✅ SUKSES! Playwright menggunakan Drive E.")
    else:
        print("❌ GAGAL! Masih menggunakan lokasi default (Drive C).")
Enter fullscreen mode Exit fullscreen mode

Jalankan:

uv run python cek_lokasi.py
Enter fullscreen mode Exit fullscreen mode

5. Membersihkan Sampah di Drive C

Jika langkah 4 sudah "SUKSES", Anda aman menghapus folder lama untuk menghemat ruang penyimpanan.

Cara Hapus:

  1. Buka File Explorer.
  2. Ketik di address bar: %localappdata% lalu tekan Enter.
  3. Cari folder bernama ms-playwright.
  4. Hapus folder tersebut.

6. Contoh Kode: Membuka Google

Berikut adalah contoh kode dasar untuk memastikan Playwright berjalan normal. Kita set headless=False agar browser terlihat di layar.

Buat file main.py:

from playwright.sync_api import sync_playwright
import time

def main():
    with sync_playwright() as p:
        print("Meluncurkan browser dari Drive E...")
        # headless=False membuat browser muncul di layar
        browser = p.chromium.launch(headless=False, slow_mo=500)
        page = browser.new_page()

        print("Membuka Google...")
        page.goto("https://www.google.com")

        # Contoh interaksi: mengetik di kolom search
        try:
            # Selector bisa berbeda tergantung update Google, ini contoh umum
            page.fill("textarea[name='q']", "Tutorial Playwright Python")
            page.press("textarea[name='q']", "Enter")
        except:
            print("Gagal mengetik, mungkin selector berubah.")

        print(f"Judul Tab: {page.title()}")

        # Tahan 5 detik sebelum menutup
        time.sleep(5)
        browser.close()
        print("Selesai.")

if __name__ == "__main__":
    main()
Enter fullscreen mode Exit fullscreen mode

Troubleshooting Umum

Error: RuntimeError: Event loop is closed

  • Penyebab: Biasanya terjadi jika Anda menekan Ctrl+C untuk mematikan script yang sedang hang atau macet.
  • Solusi: Jangan panik. Ini biasanya terjadi karena script macet menunggu browser yang belum terinstall. Pastikan langkah nomor 3 (Install Browser) sudah dilakukan dengan sukses.

Panduan ini dibuat berdasarkan diskusi troubleshooting untuk memindahkan cache Playwright dari Drive C ke E menggunakan uv.

Top comments (0)