Dijital medyada haber üreten bir içerik üreticisi hava durumu, spor, doğal afet gibi haberleri üretirken haberde kullanacağı veriye arama motoru üzerinden ulaşarak “kopyala-yapıştır” yöntemini kullanabiliyor. Bu her ne kadar basit bir yöntem olarak görünse de bundan daha basit, verimli ve hızlı bir yöntem var: Application Programming Interface (API).
API nedir, ne işe yarar?
API, Application Programming Interface kelimelerinin kısaltmasıdır. Bu uygulamalar bir uygulamanın bir diğer uygulama ile iletişim kurmasını sağlar. API’ler bu sayede platformlar arası bilgi akışına imkân tanır. Bu uygulamalar haber üretimi için kullanıldığında ise haber kaynaklarından veri çekmek ve işlemek kolaylaşır.
API’ler habercilik için pek çok avantaj sunuyor. Bunları kısa maddeler olarak şöyle derlenebilir:
- Hızlı ve güncel veri erişimi: API’ler, haber editörlerine anlık ve güncel verilere hızlı erişim imkânı sağlar. Hava durumu, spor müsabakaları veya doğal afet gibi olaylara ait güncel bilgiler, API aracılığıyla kolaylıkla alınabilir ve bu sayede haber içeriği daha güncel hâle getirilebilir.
- Verimli araştırma süreci: Geleneksel haber üretiminde haber editörleri bir dizi kaynağı manuel olarak inceleyerek bilgi toplar. Ancak API’ler kullanıldığında, bu süreç otomatikleşir ve haber editörleri daha fazla veriye daha kısa sürede ulaşabilir. Bu da araştırma sürecini daha verimli hâle getirir.
- Çeşitlilik ve geniş kapsam: API’ler, haber kaynaklarından sadece metin tabanlı bilgileri değil; görsel, sesli veya interaktif içerikleri de çekebilme yeteneği sunar. Bu, haber editörlerine çeşitli medya türlerini kullanarak daha zengin ve etkileyici haber içerikleri oluşturma imkânı sağlar.
- Otomatik format dönüşümü: API’ler, veri alındıktan sonra otomatik format dönüşümü sağlar. Bu, haber editörlerinin farklı kaynaklardan gelen veriyi kendi içerik yönetim sistemlerine uygun formata çevirmelerini kolaylaştırır, böylece haber içeriği tutarlı ve düzenli olur.
- Gerçek zamanlı izleme ve bildirimler: API’ler, belirli olaylar veya konular hakkında gerçek zamanlı izlemeyi ve bildirimleri destekler. Örneğin, doğal afetlerle ilgili bir API, olay gerçekleştiğinde haber editörlerine otomatik bildirimler gönderebilir, bu da olayın hemen haberleştirilmesine olanak tanır.
- Esneklik ve uyarlanabilirlik: API’ler, haber editörlerine istedikleri veriyi ve bilgileri çekebilmeleri için esneklik sağlar. Her haber kaynağı farklı API’leri kullanabilir ve bu da haber içeriğini çeşitlendirmek ve özelleştirmek için geniş olanaklar sunar.
- İnsan hata riskini azaltma: Geleneksel haber üretimi süreçlerinde manuel veri girişi, hatalara ve tutarsızlıklara yol açabilir. API’ler kullanılarak alınan veriler, otomatik ve doğrudan entegrasyon sağladığından insan kaynaklı hata riskini minimuma indirir.
Nasıl kullanılır?
Anaconda’yı indirin: Anaconda, veri bilimi ve bilimsel hesaplama projeleri için kullanılan, açık kaynaklı Python ve R programlarını da içeren bir dağıtım programı. Anaconda, veri bilimi ve bilimsel hesaplama topluluğunu desteklemek, bu alandaki projeleri kolayca yönetmek ve gereksinimleri karşılamak amacıyla tasarlanmıştır. Farklı kodlama paketlerini yüklemeyi, kullanmayı ve kaldırmayı kolaylaştırmasının yanı sıra kolay ve anlaşılır bir arayüze sahip olması nedeniyle zamanla geniş bir kabul görmüştür.
Anaconda, API’lerin kullanımı için en ideal programlardan biri olan Python için daha verimli bir kullanım sunar.
Anaconda’yı buradan indirebilirsiniz.
Spyder’ı başlatın: Spyder, Python programlamada veri bilimi ve bilimsel hesaplamalar için kullanılan bir geliştirme ortamıdır. Spyder veri analizi, görselleştirme, makine öğrenimi ve bilimsel hesaplamalar gibi veri bilimi projeleri için tasarlanmıştır.
API kullanımı için gerekli olan kodlamayı Spyder’da yapacağız.
API seçimi
Kodlamaya başlamadan önce, hangi konuda haber üretiyorsanız ona göre bir API seçip anahtarınızı oluşturmanız gerekir. API anahtarları, seçtiğiniz API’yi kullanabilmenizi ve istediğiniz verilere erişiminizi sağlar.
Örneğin, eğer hava durumuyla ilgili bir haber yapmak istiyorsanız Weather API’yi ücretsiz olarak kullanabilirsiniz. Yapmanız gereken Weather API’nin sitesine (weatherapi.com) girerek hesap oluşturmak ve API anahtarınızı kopyalayarak bir yere kaydetmektir.
import requests
- Veriyi alacağınız adresi, “def” fonksiyonuyla kullanmak istediğiniz API’yi belirterek API anahtarınızla birlikte tanımlamanız gerekir. Örneğin, herhangi bir şehrin hava durumu verisini elde etmek için Weather API’yi bu şekilde kullanabilirsiniz:
def fetch_weather():
# Hava durumu API'sine istek gönderme
api_key = 'API_ANAHTARI'
city = ŞEHİR # İstediğiniz şehri veya şehirleri buraya yazabilirsiniz
url = f'http://api.weatherapi.com/v1/current.json?key={api_key}&q={city}'
response = requests.get(url)
data = response.json()
- İstediğiniz verileri API sisteminden alabilmeniz için kullandığınız API’nin belirlediği parametreleri yazın. Bu parametrelere, kullandığınız API’nin internet sitesinden erişebilirsiniz.
# Hava durumu verilerini alma
temperature = data['current']['temp_c']
condition = data['current']['condition']['text']
return temperature, condition
- Haberi oluşturmaya başlayabilirsiniz. Bunun için, elde ettiğiniz verileri haber metninize eklemenizi sağlayacak yeni parametreler oluşturmanız ve bu parametreleri elde ettiğiniz verilerle açıklamanız gerekir.
def generate_news():
temperature, condition = fetch_weather()
# Haber başlığı oluşturma
headline = f'Hava Durumu: {temperature} derece, {condition}'
# Haber içeriğini oluşturma
content = "Bugünün hava durumu oldukça {condition} olacak. Sıcaklık yaklaşık olarak {temperature} derece olacak"
return headline, content
- Bundan sonra haberi yazdırabilirsiniz. Bunun için “print” fonksiyonunu kullanabilirsiniz.
def main():
headline, content = generate_news()
# Haberi yazdırma
print("Başlık:", headline)
print("İçerik:", content)
if __name__ == '__main__':
main()
Algoritmanızı nasıl geliştirebilirsiniz?
API kullanarak haber metni yazan algoritmanızı geliştirmek için çeşitli yapay zekâ araçlarından yardım alabilirsiniz. Özellikle ChatGPT ve ChatGPT destekli Poe AI, temel kodlamada anlaşılır ve kullanışlı ipuçları verebilir, ilham verici örnekler sunabilir. Örneğin; elde ettiğiniz haber metninin istediğiniz zamanda, istediğiniz şekilde, istediğiniz platformda otomatik olarak yayınlanmasını sağlayacak bir fonksiyonu çalışmanıza ekleyebilir; bu sayede aldığınız verimi daha yüksek seviyeye çıkarabilirsiniz.
Ayrıca, kullandığınız API’leri birden fazla parametreyi içerecek şekilde geliştirebilir ve farklı verileri birbirine entegre ederek daha kapsamlı bir içeriğe ulaşabilirsiniz. Örneğin, hava durumu API’si kullanılıyorsa rüzgâr hızı, nem oranı gibi ek parametreleri de buna entegre ederek daha detaylı ve zengin hava durumu haberleri oluşturabilirsiniz. Bu, algoritmanızın daha güvenilir ve sürdürülebilir bir şekilde çalışmasına katkıda bulunabilir.
Bu yazı NewsLabTurkey ve Bilgi Üniversitesi İletişim Fakültesi işbirliği ile Dr. Sarphan Uzunoğlu’nun gözetiminde yürütülen CLAB projesi kapsamında yayınlanmıştır. Yazı oluşturulurken poe.com AI kullanılmış, ardından da NewsLabTurkey editörlerince düzenlemeden geçirilmiştir.