DEV Community

Cover image for Python, Ollama ve DeepSeek ile Yapay Zeka Destekli Tarayıcı Otomasyonu Nasıl Geliştirilir
Tobias Hoffmann
Tobias Hoffmann

Posted on • Originally published at apidog.com

Python, Ollama ve DeepSeek ile Yapay Zeka Destekli Tarayıcı Otomasyonu Nasıl Geliştirilir

Modern tarayıcı otomasyonu hızla gelişiyor. Kırılgan Selenium betiklerinin ve hassas seçici yönetiminin ötesinde, Browser Use, Ollama ve DeepSeek ile doğal dil talimatlarını gerçek tarayıcı aksiyonlarına dönüştüren yerel yapay zeka ajanları oluşturabilirsiniz.

Apidog'u bugün deneyin

Bu yazıda Python tabanlı bir ajan kuracağız. Ajan; tarayıcı açacak, sayfalar arasında gezinecek, formlarla etkileşime girecek ve web üzerinden bilgi çıkarabilecek. Kurulum yerel çalışır: LLM tarafında Ollama, akıl yürütme tarafında DeepSeek, tarayıcı kontrolünde ise Browser Use kullanacağız.

Neden Browser Use, Ollama ve DeepSeek?

Bu yığın üç parçadan oluşur:

  • Browser Use: Gezinme, tıklama, form doldurma ve veri çıkarma gibi tarayıcı aksiyonlarını Python üzerinden yönetir.
  • Ollama: LLM modelini yerel makinenizde çalıştırmanızı sağlar.
  • DeepSeek: Doğal dil görevlerini uygulanabilir tarayıcı adımlarına dönüştürmek için kullanılır.

Bu kombinasyonla şu tür iş akışlarını otomatikleştirebilirsiniz:

  • Web sayfalarında gezinme ve veri çıkarma
  • Form doldurma
  • Dinamik sayfalarla etkileşim
  • Çok adımlı doğal dil görevlerini yürütme
  • QA ve API odaklı test senaryolarını destekleme

Önkoşullar

Başlamadan önce aşağıdaki araçların yüklü olduğundan emin olun:

  • Python 3.11+
python --version
Enter fullscreen mode Exit fullscreen mode
  • Ollama

    https://ollama.com

  • Node.js

    Playwright tabanlı tarayıcı otomasyonu için gerekir.

node --version
Enter fullscreen mode Exit fullscreen mode
  • Git
git --version
Enter fullscreen mode Exit fullscreen mode
  • Donanım
    • En az 4 CPU çekirdeği
    • 16 GB RAM
    • DeepSeek modeli için yaklaşık 12 GB boş disk alanı
    • GPU zorunlu değildir, ancak büyük modellerde performansı artırır

Eksik bileşenleri bu aşamada kurmanız, sonraki adımlarda bağımlılık hatalarını azaltır.

Projeyi Oluşturma

1. Proje klasörü oluşturun

mkdir browser-use-agent
cd browser-use-agent
Enter fullscreen mode Exit fullscreen mode

2. Browser Use deposunu klonlayın

git clone https://github.com/browser-use/browser-use.git
cd browser-use
Enter fullscreen mode Exit fullscreen mode

3. Python sanal ortamı oluşturun

python -m venv venv
Enter fullscreen mode Exit fullscreen mode

Sanal ortamı etkinleştirin:

macOS / Linux

source venv/bin/activate
Enter fullscreen mode Exit fullscreen mode

Windows

venv\Scripts\activate
Enter fullscreen mode Exit fullscreen mode

Terminalde (venv) görüyorsanız ortam aktiftir.

4. Projeyi VS Code'da açın

code .
Enter fullscreen mode Exit fullscreen mode

VS Code kullanmıyorsanız aynı adımları tercih ettiğiniz editörle de uygulayabilirsiniz.

Ollama ve DeepSeek Kurulumu

1. Ollama'yı yükleyin

Ollama'yı https://ollama.com adresinden indirin ve kurun.

Kurulumu doğrulayın:

ollama --version
Enter fullscreen mode Exit fullscreen mode

ollama indir

2. DeepSeek modelini indirin

DeepSeek “seed” modelini çekin:

ollama pull deepseek/seed
Enter fullscreen mode Exit fullscreen mode

Model yaklaşık 12 GB boyutundadır. Donanım veya disk alanı sınırlıysa daha küçük bir model kullanmayı düşünebilirsiniz; örneğin:

ollama pull qwen2.5:14b
Enter fullscreen mode Exit fullscreen mode

Kurulu modelleri kontrol edin:

ollama list
Enter fullscreen mode Exit fullscreen mode

Listede deepseek/seed, deepseek-r1 veya seçtiğiniz modelin göründüğünden emin olun.

deepseek modelini çek

Browser Use ve Bağımlılıkları Yükleme

1. Browser Use'u yükleyin

Sanal ortam aktifken Browser Use deposu içinde şu komutu çalıştırın:

pip install . ."[dev]"
Enter fullscreen mode Exit fullscreen mode

2. LangChain ve Ollama entegrasyonunu ekleyin

pip install langchain langchain-ollama
Enter fullscreen mode Exit fullscreen mode

Bu paketler Browser Use ajanının yerel Ollama modeliyle konuşmasını sağlar.

3. Playwright tarayıcılarını yükleyin

playwright install
Enter fullscreen mode Exit fullscreen mode

Linux üzerinde ek sistem bağımlılıkları gerekiyorsa:

playwright install-deps
Enter fullscreen mode Exit fullscreen mode

Hata alırsanız önce Python sürümünüzün 3.11 veya üzeri olduğunu ve sanal ortamın aktif olduğunu kontrol edin.

Ollama Sunucusunu Başlatma

Ayrı bir terminal açın ve Ollama sunucusunu başlatın:

ollama serve
Enter fullscreen mode Exit fullscreen mode

Varsayılan olarak Ollama şu adreste çalışır:

http://localhost:11434
Enter fullscreen mode Exit fullscreen mode

Python ajanını çalıştırırken bu terminali açık bırakın.

Örnek: Google'da Boston Hava Durumunu Arayan Ajan

Şimdi Browser Use ile basit bir ajan yazalım. Görev: Google üzerinden Boston, Massachusetts hava durumunu bulmak.

Proje klasöründe test.py dosyası oluşturun:

import asyncio
from browser_use import Agent
from langchain_ollama import ChatOllama


async def run_search() -> str:
    agent = Agent(
        task="Use Google to find the weather in Boston, Massachusetts",
        llm=ChatOllama(
            model="deepseek/seed",
            num_ctx=32000,
        ),
        max_actions_per_step=3,
        tool_call_in_content=False,
    )

    result = await agent.run(max_steps=15)
    return result


async def main():
    result = await run_search()
    print("\n\n", result)


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

VS Code Python yorumlayıcısını kontrol edin

VS Code kullanıyorsanız doğru sanal ortamı seçin:

  1. Ctrl + P veya macOS üzerinde Cmd + P
  2. > Select Python Interpreter yazın
  3. Projenizdeki venv yorumlayıcısını seçin

Betiği çalıştırın

python test.py
Enter fullscreen mode Exit fullscreen mode

Ajan tarayıcıyı başlatır, Google'da arama yapar ve sonucu terminale yazar.

browser-use arama

Hata alırsanız şunları kontrol edin:

  • ollama serve çalışıyor mu?
  • http://localhost:11434 erişilebilir mi?
  • Model adı doğru mu?
  • Playwright tarayıcıları kurulu mu?

Ollama günlüklerini şu dizinde inceleyebilirsiniz:

~/.ollama/logs
Enter fullscreen mode Exit fullscreen mode

browser-use arama sonucu

Görevi Değiştirme

Ajanın davranışını değiştirmek için task alanını güncellemeniz yeterlidir.

Örneğin:

task="Go to GitHub, search for browser-use, and summarize the repository description"
Enter fullscreen mode Exit fullscreen mode

Veya:

task="Visit a documentation page, extract all API endpoint paths, and return them as a list"
Enter fullscreen mode Exit fullscreen mode

Daha deterministik sonuçlar için görevleri net ve ölçülebilir yazın:

Kötü örnek:

Uçuş bul.
Enter fullscreen mode Exit fullscreen mode

Daha iyi örnek:

kayak.com adresine git, Zürih'ten Pekin'e 25.12.2025–02.02.2026 tarihleri arasında uçuş ara ve sonuçları fiyata göre sırala
Enter fullscreen mode Exit fullscreen mode

Apidog'u Entegre Etme: API Sözleşmelerini Doğrulama

Tarayıcı ajanları çoğu zaman API destekli web uygulamalarıyla etkileşime girer. Bu durumda yalnızca UI akışının çalışması yeterli değildir; arka uç API sözleşmelerinin de tutarlı olması gerekir.

Apidog bu noktada şu iş akışlarına yardımcı olur:

  • API uç noktalarının beklenen yanıtları verdiğini test etme
  • API test senaryolarını oluşturma ve yönetme
  • Hazırlık ve üretim ortamlarında API sözleşmelerini doğrulama
  • Tarayıcı otomasyonu ile API doğrulamasını aynı test stratejisinde birleştirme

Örneğin, ajanınız bir ödeme, kayıt veya arama akışını tarayıcı üzerinden test ederken; Apidog ile bu akışta kullanılan API'lerin beklenen şemaya ve davranışa uyduğunu ayrıca doğrulayabilirsiniz.

Apidog ile API Sözleşme Testi

Apidog ile API Sözleşme Testi

Etkili İstem Yazma İpuçları

Browser Use ajanının daha doğru çalışması için istemleri açık yazın.

1. Hedefi net belirtin

Google'a git, Boston Massachusetts hava durumunu ara ve sıcaklığı Fahrenheit olarak döndür.
Enter fullscreen mode Exit fullscreen mode

2. Çıktı formatını tanımlayın

Sonucu şu formatta döndür: şehir, sıcaklık, hava durumu açıklaması.
Enter fullscreen mode Exit fullscreen mode

3. Çok adımlı işleri bölün

LinkedIn'i aç, makine öğrenmesi işleri ara, ilk 5 sonucu listele ve şirket adlarını çıkar.
Enter fullscreen mode Exit fullscreen mode

4. Sınırları belirtin

Sadece ilk sayfadaki sonuçları kullan.
Enter fullscreen mode Exit fullscreen mode

5. Gerekirse görevi yineleyin

İlk sonuç beklediğiniz gibi değilse istemi daha spesifik hale getirin. Örneğin “hava durumunu bul” yerine “Google arama sonuçlarındaki hava durumu kartından sıcaklık değerini çıkar” demek daha iyi sonuç verebilir.

Hata Ayıklama ve Sorun Giderme

Ollama çalışmıyor

Kontrol edin:

ollama serve
Enter fullscreen mode Exit fullscreen mode

Model listesini doğrulayın:

ollama list
Enter fullscreen mode Exit fullscreen mode

Günlükleri inceleyin:

~/.ollama/logs
Enter fullscreen mode Exit fullscreen mode

Model adı hatalı

Kodda kullandığınız model adı ollama list çıktısıyla aynı olmalıdır.

Örneğin:

model="deepseek/seed"
Enter fullscreen mode Exit fullscreen mode

Playwright tarayıcı açmıyor

Tarayıcıları yeniden yükleyin:

playwright install
Enter fullscreen mode Exit fullscreen mode

Linux üzerinde:

playwright install-deps
Enter fullscreen mode Exit fullscreen mode

Ajan çok yavaş çalışıyor

DeepSeek modelleri donanıma bağlı olarak yavaş olabilir. Alternatif olarak daha küçük bir model deneyebilirsiniz:

ollama pull qwen2.5:14b
Enter fullscreen mode Exit fullscreen mode

Sonra kodda model adını güncelleyin:

llm=ChatOllama(
    model="qwen2.5:14b",
    num_ctx=32000,
)
Enter fullscreen mode Exit fullscreen mode

Ajan yanlış aksiyonlar alıyor

Şunları deneyin:

  • Görevi daha kısa ve spesifik yazın
  • Çıktı formatı ekleyin
  • Maksimum adım sayısını artırın
  • max_actions_per_step değerini düşürerek ajanı daha kontrollü hale getirin

Örnek:

result = await agent.run(max_steps=25)
Enter fullscreen mode Exit fullscreen mode

Sıkça Sorulan Sorular

Browser Use nedir?

Browser Use, Playwright üzerinde çalışan ve yapay zeka destekli tarayıcı otomasyonu sağlayan bir Python paketidir.

GitHub: https://github.com/browser-use/browser-use

GPU gerekli mi?

Zorunlu değildir. Ancak DeepSeek gibi daha büyük modellerde GPU performansı artırır.

DeepSeek dışında model kullanabilir miyim?

Evet. Ollama tarafından desteklenen ve yeterli akıl yürütme kapasitesine sahip başka modeller de kullanılabilir.

Veriler yerel mi işlenir?

Evet. Ollama'yı yerel çalıştırdığınızda, aksi şekilde yapılandırmadığınız sürece model çıkarımı makinenizde yapılır.

Giriş akışları ve çok adımlı görevler otomatikleştirilebilir mi?

Evet. Görevi doğal dilde tanımlayabilirsiniz. Ajan bu görevi tarayıcı aksiyonlarına böler. Ancak kimlik doğrulama, CAPTCHA ve güvenlik kontrolleri gibi alanlarda uygulamanızın test ortamına ve kullanım kurallarına uygun hareket etmeniz gerekir.

Sonuç

Python, Browser Use, Ollama ve DeepSeek ile doğal dil talimatlarını gerçek tarayıcı aksiyonlarına dönüştüren yerel yapay zeka ajanları oluşturabilirsiniz. Bu yaklaşım özellikle QA, arka uç entegrasyonu, web veri çıkarma ve API odaklı test senaryolarında kullanışlıdır.

Başlamak için:

  1. Python sanal ortamınızı oluşturun
  2. Browser Use bağımlılıklarını kurun
  3. Ollama üzerinde modeli çalıştırın
  4. Agent ile görevinizi tanımlayın
  5. Sonuçları test edip isteminizi iyileştirin

API kullanan web akışlarında, tarayıcı otomasyonunu Apidog ile API sözleşme testiyle destekleyerek daha güvenilir uçtan uca kontroller oluşturabilirsiniz.

Top comments (0)