Google Sheets, hızlıca paylaşılabilir ve düzenlenebilir olması sayesinde küçük projelerde basit bir veritabanı gibi kullanılabilir. Bu derste gspread kütüphanesiyle Python'dan bir Google E-Tablolar dosyasına bağlanacağız.
Google Cloud Console'da Bir Servis Hesabı Oluşturmak
- console.cloud.google.com üzerinden yeni bir proje oluşturun.
- API'ler ve Servisler kısmından Google Sheets API ve Google Drive API'yi etkinleştirin (ikisi de gereklidir; yalnızca Sheets API'yi açmak yeterli olmaz).
- Kimlik Bilgileri (Credentials) → Servis Hesabı Oluştur ile yeni bir servis hesabı oluşturun.
- Bu servis hesabının Anahtarlar (Keys) sekmesinden JSON formatında yeni bir anahtar indirin — bu dosya, kodunuzun kimlik doğrulaması için kullanacağı özel bir dosyadır ve gizli tutulmalıdır (asla herkese açık bir depoya yüklemeyin).
E-Tabloyu Servis Hesabıyla Paylaşmak
İndirdiğiniz JSON dosyasının içinde bir client_email alanı bulunur (ör. proje-adi@proje-adi.iam.gserviceaccount.com). Google E-Tablolar dosyanızı açıp bu e-posta adresini Düzenleyici (Editor) yetkisiyle paylaşmanız gerekir — aksi halde servis hesabınız dosyaya erişemez.
Kurulum
pip install gspread google-auth
Bağlanmak ve Veri Okumak
import gspread
gc = gspread.service_account(filename="servis-hesabi.json")
sayfa = gc.open("belge").sheet1
deger = sayfa.cell(2, 1).value
print(deger)
gspread.service_account(filename=...), indirdiğiniz JSON anahtar dosyasıyla kimlik doğrulaması yapar.gc.open("belge"), e-tablonuzun adını (Google Drive'daki başlığını) kullanarak dosyayı açar..sheet1, ilk sekmeyi (worksheet) seçer..cell(2, 1), 2. satır 1. sütundaki hücreyi seçer;.valueile içeriğini okursunuz.
Bir Kolonun veya Satırın Tamamını Almak
tum_isimler = sayfa.col_values(1)
ilk_satir = sayfa.row_values(1)
Hücreye Yazmak
sayfa.update_cell(3, 2, "Yeni Değer")
Ne Zaman Kullanışlı?
Google Sheets entegrasyonu; teknik olmayan ekip arkadaşlarınızın Google E-Tablolar üzerinden kolayca veri girip düzenlediği, sizin de bu veriyi Python tarafında okuyup işlediğiniz senaryolarda (ör. basit bir stok takibi, form yanıtlarını işleme) pratik bir orta yoldur — tam bir veritabanı kurmanın gerekli olmadığı küçük ölçekli işler için idealdir.
Sırada Ne Var?
Sırada, Twitter (X) API'siyle kendi hesabınızdan otomatik tweet attıran bir bot yazacağız.