Skip to main content

Yargıtay Karar Arama Scraper, CLI ve MCP Sunucusu

Project description

Yargıtay Karar Arama Scraper Logo

Yargıtay Karar Arama Scraper & MCP Sunucusu

PyPI Version Python Versions Build Status License

Yargıtay Karar Arama sitesinden veri çeken, bunu bir komut satırı arayüzü (CLI) üzerinden renkli tablolarla sunan ve bir MCP (Model Context Protocol) sunucusu olarak Claude gibi Büyük Dil Modelleri (LLM) ile etkileşime açan modern ve modüler bir Python paketidir.


✨ Özellikler

  • Modüler Scraper: httpx ve pydantic kullanılarak yazılmış temiz, nesne yönelimli ve tip güvenli asenkron (async) scraper çekirdeği.
  • Güçlü CLI: click ve rich tabanlı, kullanıcı dostu ve interaktif görünüme sahip komut satırı arayüzü.
  • MCP Sunucusu: LLM'lerin (Claude, Cursor vb.) otomatik olarak Yargıtay'da araştırma yapabilmesi için standart mcp arayüzü sağlayan sunucu.
  • Gelişmiş Arama: Daire, esas yılı, karar yılı ve sıralama yönü gibi detaylı kriterlerle arama yapabilme yeteneği.
  • Karar Temizleme: HTML etiketleriyle dolu kararları otomatik olarak temizleyip saf ve okunaklı metin haline dönüştürme.

📸 Ekran Görüntüleri (CLI)

Terminal Arayüzü Ekran Görüntüleri (Görmek için tıklayın)
Basit Arama
Basit Arama CLI
Detaylı Arama
Detaylı Arama CLI
Karar Detayı Okuma
Karar Detayı Okuma CLI

🚀 Kurulum

PyPI üzerinden kararlı sürümü kurmak için (yakında):

pip install yargitay-karar-scraper

Kaynak koddan kurmak ve geliştirmek için:

git clone https://github.com/atacanyaymaci/yargitay-karar-scraper.git
cd yargitay-karar-scraper
pip install -e .

💻 Kullanım

1. Komut Satırı Arayüzü (CLI)

CLI aracını yargitay-karar-cli komutu ile terminalden doğrudan kullanabilirsiniz.

Basit Arama:

yargitay-karar-cli search --kelime "hırsızlık" --page-size 10

Gelişmiş / Detaylı Arama:

yargitay-karar-cli detailed-search --kelime "hırsızlık" --daire "1. Ceza Dairesi" --karar-yil "2018"

Bir Kararın Tam Metnini Çekmek:

yargitay-karar-cli detail --id "120109100"

Daha fazla detay için docs/cli_usage.md dosyasına göz atabilirsiniz.

2. MCP Sunucusu Olarak Kullanım

Aşağıdaki komut MCP sunucusunu (stdio üzerinden) ayağa kaldırır ve LLM'lerin search_cases ile get_case_detail araçlarını kullanabilmesini sağlar:

yargitay-karar-mcp

Bunu Claude Desktop uygulamanızın claude_desktop_config.json dosyasına şu şekilde ekleyebilirsiniz:

{
  "mcpServers": {
    "yargitay_kararlar": {
      "command": "yargitay-karar-mcp",
      "args": []
    }
  }
}

Kurulumu yaptıktan sonra Claude'a doğrudan şu şekilde promptlar verebilirsiniz:

"Bana Yargıtay 1. Ceza Dairesinin 2018 yılında vermiş olduğu 'kasten adam öldürme' ile ilgili kararları bulur musun?"

Daha fazla detay ve kullanım senaryosu için docs/mcp_usage.md dosyasına göz atabilirsiniz.

3. Python Kütüphanesi Olarak Kullanım

Eğer kendi Python projenizde doğrudan kod üzerinden kullanmak isterseniz, paketimizin asenkron (async) YargitayClient sınıfını kolayca projenize dahil edebilirsiniz:

import asyncio
from yargitay_karar_scraper.scraper import YargitayClient, SearchCriteria

async def main():
    client = YargitayClient()
    criteria = SearchCriteria(kelime="dolandırıcılık", page_size=5)
    
    response = await client.search(criteria)
    
    if not response.error:
        for case in response.results:
            print(f"Karar ID: {case.id} | Esas/Karar: {case.esas_no} / {case.karar_no}")

if __name__ == "__main__":
    asyncio.run(main())

Kendi projenize entegre etmeden önce daha fazla detaylı kod örneği incelemek için projedeki examples/ klasörüne göz atabilirsiniz.


📄 Lisans

Bu proje MIT Lisansı altında lisanslanmıştır. Dilediğiniz gibi kullanabilir, değiştirebilir ve dağıtabilirsiniz.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

yargitay_karar_scraper-0.1.0.tar.gz (1.5 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

yargitay_karar_scraper-0.1.0-py3-none-any.whl (11.4 kB view details)

Uploaded Python 3

File details

Details for the file yargitay_karar_scraper-0.1.0.tar.gz.

File metadata

  • Download URL: yargitay_karar_scraper-0.1.0.tar.gz
  • Upload date:
  • Size: 1.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for yargitay_karar_scraper-0.1.0.tar.gz
Algorithm Hash digest
SHA256 20bcd5db305bf6937ac5c693412a15b34a5934de6f8ee3612926eed8fee130bc
MD5 36c37b9cacf6e8e894223226e235327d
BLAKE2b-256 032b7244b11672a227bd70d37e3839d72a7d8cea2cd63c9053087e9782e98f83

See more details on using hashes here.

Provenance

The following attestation bundles were made for yargitay_karar_scraper-0.1.0.tar.gz:

Publisher: publish.yml on AtaCanYmc/yargitay-karar-scraper

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file yargitay_karar_scraper-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for yargitay_karar_scraper-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c5c4c01d808a34f5885e16ea39f63ef378cb4ff39abb320c2ed041ae6cb08664
MD5 f0629d87cfda353ebea4c4eac750a4e2
BLAKE2b-256 b284ddd70d91f8a4c28c58765b977ee24e20b011df514f1888f34f43a322ff4d

See more details on using hashes here.

Provenance

The following attestation bundles were made for yargitay_karar_scraper-0.1.0-py3-none-any.whl:

Publisher: publish.yml on AtaCanYmc/yargitay-karar-scraper

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page