0Pricing
Learn AI with Python · Ders

Herkese Açık Veri API'leriyle Çalışma

OpenWeatherMap, Wikipedia ve kamu kurumlarının API'leriyle uygulamalı veri toplama örnekleri.

Herkese Açık Veri API'leriyle Çalışma, CoddyKit'te ücretsiz bir Learn AI with Python 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, Learn AI with Python öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Learn AI with Python kursu toplamda 4 dersten oluşur.

Herkese Açık API'lerle Pratik Yapma

Veri toplamayı öğrenmenin en iyi yolu gerçek API'lere istek göndermektir. Bu derste kullanımı kolay üç API ele alınır:

  • JSONPlaceholder — pratik yapmak için sahte bir REST API'si; anahtar gerekmez
  • OpenWeatherMap — gerçek hava durumu verileri; ücretsiz API anahtarı gerekir
  • Wikipedia API — makale içeriği ve arama

Pratik için JSONPlaceholder

JSONPlaceholder, kimlik doğrulaması olmadan sahte gönderiler, kullanıcılar ve yorumlar sunar. İstek gönderme ve ayrıştırma kodunuzu sınamak için mükemmeldir.

import requests

resp = requests.get("https://jsonplaceholder.typicode.com/posts", timeout=10)
resp.raise_for_status()
posts = resp.json()
print(len(posts), "posts")
print(posts[0]["title"])

Yanıtı DataFrame İş Akışına Dönüştürme

Standart iş akışı şöyledir: JSON verilerini alın, ardından analiz için doğrudan bir DataFrame'e yükleyin.

import pandas as pd

posts = requests.get("https://jsonplaceholder.typicode.com/posts", timeout=10).json()
df = pd.DataFrame(posts)
print(df.head())
print(df["userId"].value_counts())

OpenWeatherMap — Anahtar Alma

OpenWeatherMap, appid parametresiyle gönderilen ücretsiz bir API anahtarı gerektirir. Anahtarları kodun içine yazmayın; bir ortam değişkeninden okuyun.

import os

API_KEY = os.environ["OWM_API_KEY"]   # set OWM_API_KEY in your shell

OpenWeatherMap — Sorgu Parametreleri

Mevcut hava durumu uç noktası q (şehir), appid (anahtar) ve units (metrik/İngiliz ölçü sistemi) parametrelerini alır.

import requests, os

params = {
    "q": "Istanbul",
    "appid": os.environ["OWM_API_KEY"],
    "units": "metric",
}
resp = requests.get("https://api.openweathermap.org/data/2.5/weather", params=params, timeout=10)
resp.raise_for_status()
data = resp.json()

İç İçe JSON Alanlarını Çıkarma

Gerçek API yanıtları derin biçimde iç içe olabilir. Birbirini izleyen anahtarlarla istediğiniz alana ilerleyin; eksik olabilecek alanlar için varsayılan değerlerle birlikte .get() kullanın.

temp = data["main"]["temp"]
humidity = data["main"]["humidity"]
desc = data["weather"][0]["description"]
print(f"{temp} C, {humidity}% humidity, {desc}")

Birçok Şehir için Hava Durumu Verisi Toplama

Şehirler üzerinde döngü kurun, ilgilendiğiniz alanları sözlüklerden oluşan bir listede düzleştirin ve ardından bir DataFrame oluşturun.

cities = ["Istanbul", "London", "Tokyo"]
rows = []
for c in cities:
    p = {"q": c, "appid": os.environ["OWM_API_KEY"], "units": "metric"}
    d = requests.get("https://api.openweathermap.org/data/2.5/weather", params=p, timeout=10).json()
    rows.append({"city": c, "temp": d["main"]["temp"], "desc": d["weather"][0]["description"]})
import pandas as pd
df = pd.DataFrame(rows)

Wikipedia API

Wikipedia API, arama ve makale içeriği sunar. Bu API bir action ve format=json parametrelerinin yanı sıra açıklayıcı bir User-Agent üst bilgisi bekler.

params = {
    "action": "query",
    "list": "search",
    "srsearch": "machine learning",
    "format": "json",
}
headers = {"User-Agent": "data-collector/1.0 (you@example.com)"}
resp = requests.get("https://en.wikipedia.org/w/api.php", params=params, headers=headers, timeout=10)
results = resp.json()["query"]["search"]

Makale Özetlerini Alma

Bir makalenin giriş paragrafını almak için prop=extracts ile exintro=True kullanın — metin veri kümeleri oluştururken oldukça kullanışlıdır.

params = {
    "action": "query",
    "prop": "extracts",
    "exintro": True,
    "explaintext": True,
    "titles": "Artificial intelligence",
    "format": "json",
}
resp = requests.get("https://en.wikipedia.org/w/api.php", params=params, timeout=10)
pages = resp.json()["query"]["pages"]
for pid, page in pages.items():
    print(page["extract"][:300])

API Belgelerini Okuma

Her API farklıdır. Kod yazmaya başlamadan önce şunları belgelerden öğrenin: temel URL, zorunlu parametreler, kimlik doğrulama yöntemi, yanıtın yapısı ve hız sınırları.

Bir isteği etkileşimli olarak sınayın, resp.json() içeriğini inceleyin ve ardından döngünüzü gerçek yapıya göre kurun.

API'leri Sorumlu Kullanma

Herkese açık API'ler paylaşılan kaynaklardır. Onlara saygı gösterin:

  • Kimliğinizi belirten bir User-Agent gönderin
  • Aynı verileri yeniden istememek için sonuçları önbelleğe alın
  • İstekler arasında bekleyin ve hız sınırlarına uyun
  • Her API'nin kullanım koşullarını okuyup bunlara uyun

Hızlı Kontrol: Pratik API'si

Bir API anahtarı için kaydolmadan istek gönderme ve ayrıştırma kodunuzu sınamak istiyorsunuz.

Özet: Herkese Açık Veri API'leri

Gerçek API'lerden veri toplamayı uyguladınız:

  • Kimlik doğrulamasız pratik için JSONPlaceholder
  • q, appid ve units parametreleriyle, anahtarı ortamdan alınan OpenWeatherMap
  • Arama ve makale özetleri için Wikipedia API
  • Veri alma işleminden DataFrame iş akışına geçiş ve iç içe JSON verilerinde istenen alana ilerleme
  • İyi kullanıcı alışkanlıkları: istemci tanımlayıcısı, önbelleğe alma, hız sınırları ve kullanım koşulları

Veri toplama bölümü tamamlandı. Sırada metin yapay zekâsı için düzenli ifadeler var.

Sıkça Sorulan Sorular

“Herkese Açık Veri API'leriyle Çalışma” dersi ücretsiz mi?

Evet — “Herkese Açık Veri API'leriyle Çalışma” 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 Learn AI with Python kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Learn AI with Python kursu toplamda 4 dersten oluşur.

“Herkese Açık Veri API'leriyle Çalışma” dersinde ne öğreneceğim?

OpenWeatherMap, Wikipedia ve kamu kurumlarının API'leriyle uygulamalı veri toplama örnekleri. Learn AI with Python 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.

Learn AI with Python öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Learn AI with Python, 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.

“Herkese Açık Veri API'leriyle Çalışma” 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 Learn AI with Python dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Learn AI with Python 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. Veri Toplama İçin REST API Temelleri
  2. Sayfalandırma ve Büyük Veri Kümelerini Toplama
  3. Toplanan Verileri Verimli Biçimde Depolama
  4. Herkese Açık Veri API'leriyle Çalışma
← Learn AI with Python Sayfasına Dön