0Pricing
AI Agents · Ders

Güvenilir Form Doldurma Aracısı Oluşturma

Uygulamalı bir örnek: bir portala giriş yapın, çok sayfalı bir formu doldurun ve gönderimi doğrulayın.

Güvenilir Form Doldurma Aracısı Oluşturma, CoddyKit'te ücretsiz bir AI Agents dersidir. Bu, 4 dersinin 4. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, AI Agents öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. AI Agents kursu toplamda 4 dersten oluşur.

Bu dersin bazı bölümleri henüz çevrilmemiş olup İngilizce olarak gösterilmektedir.

Gerçekçi Bir Proje

"Birden fazla sayfadan oluşan bu formu doldur" agent'ı. Playwright + LLM planlaması + yeniden deneme + görüntü işleme yedeğini birleştireceğiz.

Mimari

  1. LLM, alan gereksinimlerini bir JSON tanımından okur
  2. Playwright formu açar
  3. Her alan için seçiciyi ve değeri bulur, alanı doldurur ve doğrular
  4. Bir alanı DOM üzerinden bulmak zorsa görüntü işlemeye geçer
  5. Formu gönderir ve başarısını doğrular

Step 1: Define the Task

TASK = {
    'url': 'https://example.com/apply',
    'login': {'user': 'alice', 'pass': '...'},
    'fields': {
        'first_name': 'Alice',
        'last_name': 'Smith',
        'email': 'alice@example.com',
        'role': 'Senior Engineer'
    }
}

Step 2: Login

page.goto(TASK['url'])
if page.locator('input[name="username"]').is_visible():
    page.fill('input[name="username"]', TASK['login']['user'])
    page.fill('input[name="password"]', TASK['login']['pass'])
    page.click('button[type="submit"]')
    page.wait_for_load_state('networkidle')

Step 3: Field Filler

def fill_field(page, field_name, value):
    for selector in [
        f'input[name="{field_name}"]',
        f'input[aria-label="{field_name}"]',
        f'input[placeholder*="{field_name}"]',
        f'label:has-text("{field_name}") + input'
    ]:
        if page.locator(selector).count() > 0:
            page.fill(selector, value)
            return True
    return False

# --- demo ---
class _FakeLocator:
    def __init__(self, found):
        self._found = found
    def count(self):
        return 1 if self._found else 0

class _FakePage:
    """Only the 3rd selector (placeholder) matches, to show the fallback loop."""
    def locator(self, selector):
        return _FakeLocator(found='placeholder*=' in selector)
    def fill(self, selector, value):
        print(f'Filled via selector: {selector} -> {value!r}')

page = _FakePage()
ok = fill_field(page, 'email', 'alice@example.com')
print(f'fill_field succeeded: {ok}')

Step 4: LLM Destekli Bulucu

Standart seçiciler başarısız olursa LLM'den alanı belirlemesini isteyin:

def ask_llm_for_selector(html, field_name):
    prompt = f'Find the input element for "{field_name}" in this HTML and return a CSS selector. HTML:\n{html[:5000]}'
    return llm.invoke(prompt).content.strip()

Step 5: Görüntü İşleme Yedeği

LLM bile bir seçici bulamazsa ekran görüntüsü alın ve görüntü işlemeyi kullanın:

if not filled:
    screenshot = page.screenshot()
    coordinate = vision_llm_locate(screenshot, field_name)
    page.mouse.click(coordinate.x, coordinate.y)
    page.keyboard.type(value)

Step 6: Her Adımı Doğrulama

Doldurduktan sonra değeri yeniden okuyun:

actual = page.input_value(selector)
assert actual == expected_value, f'Expected {expected_value}, got {actual}'

Step 7: Submit and Verify

page.click('button[type="submit"]')
page.wait_for_load_state('networkidle')
if page.locator('text=Thank you').count() == 0:
    raise SubmissionFailed('Success page not detected')

Step 8: Yeniden Deneme Mantığı

Formlar bazen aksayabilir. İdempotensi denetimleriyle yeniden deneyin:

@retry(stop=stop_after_attempt(3), wait=wait_fixed(2))
def fill_and_submit(page, task):
    ...

Step 9: CAPTCHA İşleme

Formda reCAPTCHA varsa bir çözüm hizmeti kullanın (2Captcha, Anti-Captcha); ya da işlemi kontrollü biçimde başarısız sonlandırıp bir insandan yardım isteyin.

Step 10: Günlük Kaydı ve Yeniden Oynatma

Her eylemi ve screenshot'ı kaydedin. Bir şey başarısız olduğunda hata ayıklamak için iz kaydını yeniden oynatabilirsiniz:

context.tracing.stop(path=f'trace-{task_id}.zip')
# View with: playwright show-trace trace-abc.zip

Eşzamanlılık Hususları

Çok sayıda kullanıcının formunu paralel işlemek için her görev başına bir tarayıcı bağlamı oluşturun. Hedef siteyi aşırı yüklememek için eşzamanlılığı sınırlandırın.

Hedefe Saygı

  • İşlemler arasında hız sınırlaması uygulayın (insanlar saniyede 200 karakter yazmaz)
  • robots.txt dosyasına ve ToS'a uyun
  • Yalnızca izin verildiğinde dönüşümlü IP'ler kullanın
  • Kötüye kullanımdan kaçının; agent trafiği ≠ kapsamlı kazıma faaliyeti

Sağlamlık Stratejisi

Öngörülemeyen HTML ile form doldurmak için en güvenilir strateji nedir?

Özet

Playwright + LLM destekli seçiciler + görüntü işleme yedeği + adım başına doğrulama + yeniden denemeler + iz günlükleri. Güvenilir form doldurmanın tarifi budur.

Sıkça Sorulan Sorular

“Güvenilir Form Doldurma Aracısı Oluşturma” dersi ücretsiz mi?

Evet — “Güvenilir Form Doldurma Aracısı Oluşturma” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve AI Agents kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. AI Agents kursu toplamda 4 dersten oluşur.

“Güvenilir Form Doldurma Aracısı Oluşturma” dersinde ne öğreneceğim?

Uygulamalı bir örnek: bir portala giriş yapın, çok sayfalı bir formu doldurun ve gönderimi doğrulayın. AI Agents ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

AI Agents öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te AI Agents, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 4. dersidir.

“Güvenilir Form Doldurma Aracısı Oluşturma” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu AI Agents dersinde kod yazıp çalıştırabilir miyim?

Evet. Her AI Agents dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Playwright ile Tarayıcı Otomasyonu
  2. Ekranı Anlamak için Görsel Modeller
  3. Bilgisayar Kullanımı Kalıpları (Anthropic Computer-Use)
  4. Güvenilir Form Doldurma Aracısı Oluşturma
← AI Agents Sayfasına Dön