You can view this page in your own language.Switch
Du kannst diese Seite in deiner Sprache ansehen.Wechseln
Puedes ver esta página en tu idioma.Cambiar
Tu peux consulter cette page dans ta langue.Changer
Puoi vedere questa pagina nella tua lingua.Cambia
Je kunt deze pagina in je eigen taal bekijken.Wisselen
Możesz zobaczyć tę stronę w swoim języku.Zmień
Du kan se den här sidan på ditt eget språk.Byt
Você pode ver esta página no seu idioma.Trocar
आप यह पेज अपनी भाषा में देख सकते हैं।बदलें
Kamu bisa melihat halaman ini dalam bahasamu.Ganti
이 페이지를 사용하는 언어로 볼 수 있어요.바꾸기
このページはあなたの言語で表示できます。切り替える
يمكنك عرض هذه الصفحة بلغتك.تغيير
Yeni misin?

Çerez kullanıyoruz

Çerezler ve tarayıcı depolaması bu sitenin çalışmasına yardımcı olur; izin verirsen kullanımı da ölçer. Çerez tercihlerini dilediğin zaman . Çerez politikamız hakkında daha fazla bilgi edin.

  • TBMM kararlarını kodlamak ne anlama gelir?

    TBMM kararlarını kodlamak, Meclis Genel Kurulu'nda alınan kararların bilgisayarın işleyebileceği yapılandırılmış bir biçime, örneğin JSON dosyasına dönüştürülmesidir. JSON, anahtar-değer çiftleriyle çalışan, hem insan hem makine tarafından okunabilen bir veri biçimidir. Böylece kararlar aranabilir, sıralanabilir ve sayılabilir hale gelir. Bu metin, kararların nasıl bir veri yapısına oturtulduğunu ve bu verinin Python ile nasıl işlendiğini adım adım anlatır.

1 / 20 · 9s

TBMM Kararlarının JSON ve Python ile Kodlanması

Rabia2 mesaj

TBMM'nin öne çıkan kararlarını JSON veri seti ve Python koduyla yapılandırarak listeleyen, tür ve durum dağılımını özetleyen bir çalışma.

TBMM aldığı önemli kararları kodlama yap

TBMM kararlarını hangi biçimde "kodlamamı" istediğinizi netleştirmek için önce güncel bilgiyi toplayayım; ardından yapılandırılmış bir veri/kod çıktısı hazırlayacağım.

TBMM'nin öne çıkan kararlarını, üzerinde işlem yapılabilir bir veri yapısı (JSON) ve onu kullanan kısa bir Python koduna dönüştürdüm. Varsayımım: "kodlama" ile verinin makine tarafından okunabilir biçimde (JSON + Python) tutulmasını istediniz.

1) Veri seti — tbmm_kararlar.json

{
  "kaynak": "TBMM Genel Kurul kararları (derleme)",
  "guncelleme": "2026-10-12",
  "kararlar": [
    {
      "id": 1,
      "tarih": "2024-12-21",
      "baslik": "2025 Yılı Merkezi Yönetim Bütçe Kanunu",
      "tur": "butce",
      "ozet": "Bütçe Kanunu ve 2023 Kesin Hesap Kanunu kabul edildi (317 kabul, 249 ret, 1 çekimser).",
      "durum": "kabul"
    },
    {
      "id": 2,
      "tarih": "2025-01-28",
      "baslik": "Kartalkaya yangını Meclis Araştırma Komisyonu",
      "tur": "arastirma_komisyonu",
      "ozet": "Otel yangınına ilişkin Meclis Araştırma Komisyonu kuruldu.",
      "durum": "kabul"
    },
    {
      "id": 3,
      "tarih": "2025-06-05",
      "baslik": "10. Yargı Paketi",
      "tur": "yargi",
      "ozet": "İnfaz düzenlemesi; Resmî Gazete'de yayımlanarak yürürlüğe girdi.",
      "durum": "kabul"
    },
    {
      "id": 4,
      "tarih": "2025-07-03",
      "baslik": "İklim Kanunu",
      "tur": "cevre",
      "ozet": "Türkiye'nin ilk iklim yasası: 20 madde, 2 geçici madde; Emisyon Ticaret Sistemi (ETS) ve karbon fiyatlandırması.",
      "durum": "kabul"
    },
    {
      "id": 5,
      "tarih": "2025-07-21",
      "baslik": "Sağlıkta Bazı Kanun ve 663 sayılı KHK Değişikliği",
      "tur": "saglik",
      "ozet": "Hekimlerin en fazla iki kuruluşta çalışması, aile hekimliği uzmanlığı, e-Devlet'ten organ bağışı.",
      "durum": "kabul"
    },
    {
      "id": 6,
      "tarih": "2025-10-09",
      "baslik": "4 Uluslararası Anlaşmanın Onaylanması",
      "tur": "uluslararasi",
      "ozet": "Maldivler (ticaret), Malezya (STA), Malta (denizcilik), Romanya (projeler).",
      "durum": "kabul"
    },
    {
      "id": 7,
      "tarih": "2025-11-26",
      "baslik": "Vergi Kanunları Değişiklik Teklifi (ilk 6 madde)",
      "tur": "vergi",
      "ozet": "Vergi kanunları ve 631 sayılı KHK'da değişiklik; ilk 6 madde kabul edildi.",
      "durum": "kismi_kabul"
    },
    {
      "id": 8,
      "tarih": "2025-12-25",
      "baslik": "11. Yargı Paketi",
      "tur": "yargi",
      "ozet": "Denetimli serbestlik düzenlemesi (belirli suçlar hariç), GSS prim afı; Resmî Gazete'de yayımlandı.",
      "durum": "kabul"
    }
  ]
}

2) Kodu — analiz.py

import json
from collections import Counter

with open("tbmm_kararlar.json", encoding="utf-8") as f:
    veri = json.load(f)["kararlar"]

def yila_gore(yil):
    return [k for k in veri if k["tarih"].startswith(str(yil))]

def ture_gore(tur):
    return [k for k in veri if k["tur"] == tur]

def ozet():
    print(f"Toplam kayıt: {len(veri)}")
    print("Tür dağılımı:", dict(Counter(k["tur"] for k in veri)))
    print("Durum dağılımı:", dict(Counter(k["durum"] for k in veri)))

def listele(kayitlar):
    for k in sorted(kayitlar, key=lambda x: x["tarih"]):
        print(f'{k["tarih"]} | {k["baslik"]} ({k["tur"]})')

if __name__ == "__main__":
    ozet()
    print("\n2025 kararları:")
    listele(yila_gore(2025))

Bu haliyle çalıştırıldığında kayıt sayısını, tür/durum dağılımını ve 2025 kararlarının kronolojik listesini verir.

Not: Tarih ve içerikler basın/TBMM özetlerinden derlendi; resmî atıf için TBMM Tutanak ve Resmî Gazete kayıtlarıyla doğrulanması iyi olur.

İsterseniz şu varyantları da yapabilirim: aynı veriyi CSV/Excel olarak, SQL tablosu (CREATE TABLE + INSERT), JavaScript dizisi, ya da kararları görselleştiren bir hareketli grafik video. Hangisini tercih edersiniz?

Bu sohbetten devam et

Konuyu kendi sorunla sürdür: bu sohbetin özeti yeni sohbetine bağlam olur.

Paylaş

TBMM Kararlarını JSON ve Python ile Kodlama: Veri Yapısı ve Analiz

Bu özet, sohbetten yapay zekâ ile üretildi.

TBMM kararlarını makine tarafından okunabilir hale getirmek için JSON şeması oluşturma, Python ile analiz etme ve açık veri kaynaklarını kullanma adımları.

TBMM kararlarını kodlamak ne anlama gelir

TBMM kararlarını "kodlamak", kararların tarih, başlık, tür ve durum gibi alanlarını düzenli bir veri yapısına dönüştürmek anlamına gelir. Pratikte en yaygın yaklaşım, her kararı JSON (JavaScript Object Notation — anahtar-değer çiftlerinden oluşan, hem insan hem makine tarafından okunabilen metin biçimi) içinde bir kayıt olarak tutmak ve bu veriyi Python gibi bir dille işlemektir. Böylece kararlar; yıla, türe veya duruma göre filtrelenebilir, sayılabilir ve listelenebilir hale gelir. Bu metinde amaç, sıfırdan bir veri seti ve onu kullanan basit bir analiz kodunun nasıl kurulacağını göstermektir.

Bir karar kaydında hangi alanlar bulunur

Her karar için tutarlı bir kayıt şeması gerekir. Bir kayıtta en az şu alanlar bulunabilir: benzersiz bir numara (`id`), kararın tarihi (`tarih`), başlık (`baslik`), kararın konu kategorisi (`tur`), kısa açıklama (`ozet`) ve kararın sonucu (`durum`). Tarihlerin YYYY-AA-GG (yıl-ay-gün) biçiminde tutulması, sıralama ve filtreleme işlemlerini kolaylaştırır. `tur` alanı bütçe, yargı, sağlık, çevre gibi etiketler alabilir; `durum` alanı ise kabul, kısmi kabul veya ret gibi değerlerle kararın sonucunu yansıtır. Bu şema, hem okunabilirliği hem de tutarlılığı sağlar.

JSON dosyasının yapısı

JSON verisi, üst düzeyde bir kaynak adı, güncelleme tarihi ve `kararlar` adlı bir liste içerebilir. Her liste elemanı yukarıdaki şemaya uyan bir karar nesnesidir. Örneğin bir bütçe kararı kaydı, tarih alanında 2024-12-21, tür alanında "butce", durum alanında "kabul" değerini taşıyabilir. Benzer biçimde bir iklim kanunu kararı "cevre", bir yargı paketi "yargi" etiketiyle yer alır. Kararın sonucu oylamayla kısmen kabul edildiyse durum alanı "kismi_kabul" gibi bir değer alabilir; bu ayrım, verinin gerçeği yansıtması için önemlidir.

Python ile veriyi analiz etmek

Python tarafında, JSON dosyası `json` modülüyle okunur ve `kararlar` listesi bir değişkene atanır. Ardından küçük yardımcı fonksiyonlar yazılabilir: `yila_gore(yil)` belirli bir yıla ait kararları, `ture_gore(tur)` belirli bir türdeki kararları döndürür. `collections.Counter` ile tür ve durum dağılımı sayılabilir. Kararları tarihe göre sıralayıp listeleyen bir fonksiyon, kronolojik bir görünüm sağlar. Bu kod çalıştırıldığında toplam kayıt sayısı, tür dağılımı ve örneğin 2025 yılına ait kararların tarih sırasına göre listesi elde edilir.

Hazır açık veri kaynakları

Kendi derlemenizi oluşturmak yerine hazır açık veri kaynakları da kullanılabilir. Vekilpedia açık veri seti (güncelleme: 11 Ekim 2026), TBMM 28. Dönem kanun tekliflerini yaklaşık 3.942 kayıt ve 3,6 MB JSON olarak sunuyor; açık oylamalar, soru önergeleri ve konuşmalar da CSV ile JSON biçiminde indirilebiliyor (CC BY 4.0 lisansı). Hugging Face üzerindeki GNACT – Turkish Parliamentary Data (2026) ise 1920'den bugüne TBMM tutanaklarını kapsıyor ve Python'da `datasets` kütüphanesiyle yüklenebiliyor. Bu kaynaklar, sıfırdan derleme yapmak istemeyenler için pratik bir başlangıç sağlar.

JSON dışındaki biçimler ve seçim ölçütleri

Veri setini yalnızca JSON olarak değil, farklı biçimlerde de tutmak mümkündür. CSV veya Excel, tablo programlarında hızlı inceleme için uygundur. SQL tablosu (`CREATE TABLE` ve `INSERT` ifadeleriyle), ilişkisel sorgular ve büyük veri kümeleriyle çalışırken avantaj sağlar. JavaScript dizisi, web tabanlı görselleştirmelerde doğrudan kullanılabilir. Seçim, verinin nasıl kullanılacağına bağlıdır: yalnızca okuma ve filtreleme yeterliyse JSON; sorgulama ve birleştirme gerekiyorsa SQL; tarayıcıda gösterim hedefleniyorsa JavaScript uygun olur. Aynı veriyi birden fazla biçimde tutmak da mümkündür.

Doğrulama ve lisans koşulları

Kendi derlediğiniz veri setlerinde tarih ve içeriklerin basın özetlerinden veya TBMM özetlerinden alınması durumunda, resmî atıf için TBMM Tutanak Dergisi ve Resmî Gazete kayıtlarıyla doğrulama yapılması yerinde olur. Açık veri setlerini kullanırken lisans koşullarına dikkat edilmelidir: Vekilpedia CC BY 4.0 ile atıf verilerek kullanıma izin verirken, GNACT veri seti CC BY-NC-SA 4.0 ile ticari olmayan kullanım ve aynı lisansla paylaşım şartı getiriyor. Veri setinin güncelleme tarihini kaydetmek, ileride tutarlılığı korumak için faydalıdır.

Kaynaklar

Bu yazı hazırlanırken kullanılan web kaynakları.

Değerlendirmeler

Değerlendirme yazmak için giriş yap.

Henüz değerlendirme yok. İlk yorumu sen yaz.

Sen de sor

Ücretsiz başla, her gün 10 kredi.

Sohbete başla

Güvenlik parametreleri

  • Güvenlik puanıGeçti
    100/100Eşik 50
  • KeşfetListeleniyor
  • Arama motoruDizine açık
  • Benzer içerikBenzer içerik yok
    %0Eşik %60

Önce yayınlanmış bir sayfaya çok benzeyen sayfa, arama motorunda onun rakibi olmasın diye dizine kapatılır; sayfa okunmaya açık kalır.