Ağustos 2007
- Giriş
- Python'u yükleme
- Bağımlılıkları Yükleme
- Google Veri Kitaplığı'nı yükleme
- Testleri ve Örnekleri Çalıştırma
- "Merhaba Dünya" Örneği Yazma
- Sonuç
- Ek: PÎONPATH yolunda değişiklik yapma
Giriş
Bu nedenle, çok sayıda Google Veri hizmetinden birini kullanarak uygulama yazmak için Google Veri Python istemci kitaplığını kullanmaya karar verdiniz. Mükemmel seçim! Bu kısa eğiticiyle amacım, uygulamanızı geliştirmek için istemci kitaplığını hemen kullanmaya başlamanızı sağlamaktır.
Hemen işe koyulmak ve uygulamanızı hemen oluşturmaya başlamak istersiniz. Ancak ilk olarak geliştirme ortamınızı yapılandırmanız ve istemci kitaplığındaki modülleri çalıştırmak için ihtiyacınız olacak araçları ayarlamanız gerekebilir. Aşağıdaki adımları uygulayarak kodu hemen çalıştırabilirsiniz.
Python'u Yükleme
Python istemci kitaplığıyla geliştirme yapacaksanız Python 2.2 veya sonraki bir sürüme sahip olmanız gerekir. Birçok işletim sisteminde yüklü bir Python sürümü bulunur. Bu nedenle, yükleme adımını atlayabilirsiniz.
Hangi Python sürümünü kullandığınızı görmek için bir komut satırı terminalinde python -V
komutunu çalıştırın. (Not: V
büyük harfle yazılır.)
Bu durum aşağıdaki gibi bir şeyle sonuçlanır:
Python 2.4.3
Sürüm 2.2 veya sonraki bir sürümü görürseniz bağımlılıkları yüklemeye başlayabilirsiniz. Aksi takdirde, işletim sisteminiz için yükleme/yeni sürüme geçme talimatlarını bulmak üzere aşağıya bakın.
Python'u Windows'a yükleme
Windows'da seçebileceğiniz çok sayıda Python uygulaması vardır. Ancak bu kılavuzda, python.org adresinde bulunan .msi yükleyiciyi kullanacağım.
- Python indirme sayfasından yükleyiciyi indirerek başlayın.
- Yükleyiciyi çalıştırın; tüm varsayılan ayarları kabul edebilirsiniz
- Yüklemenizin beklendiği gibi çalışıp çalışmadığını görmek için komut istemini açın ve
python -V
komutunu çalıştırın.
Mac OS X'te Python yükleme
python.org'daki indirme listesinde Mac kullanıcıları için .dmg yükleyicileri bulunur. Bunlardan birini yükleme adımları aşağıda verilmiştir:
- http://www.python.org/download/mac/ adresine gidin
- Bu sayfadan yükleyiciyi Mac OS X'in uygun sürümüne indirin. Not: Mac OS X 10.3.8 ve önceki sürümleri için Python yükleme sayfası, Mac OS X'in yeni sürümlerinden farklıdır. OS X sürümünüzü bulmak için ekranınızın sol üst köşesindeki Apple menüsünden Bu Mac Hakkında'yı seçin.
- İndirme işlemi tamamlandıktan sonra eklemek için yeni disk görüntüsü dosyasını (ör. python-2.5-macosx.dmg) çift tıklayın. Safari çalıştırıyorsanız bu işlem sizin için zaten yapılmıştır.
- Eklenen resmi açın ve içindeki yükleyici paketini çift tıklayın.
- Yükleme talimatlarını uygulayın ve size sunulan bilgileri ve lisans sözleşmelerini okuyun. Varsayılan ayarlar burada da geçerlidir.
- Terminal.app'i (/Applications/Utilities içinde) açıp
python -V
komutunu çalıştırarak yüklemeyi doğrulayın. Yükleme sürümü görünmelidir.
Python'u Linux'a yükleme
Linux'a ve diğer *nix stili işletim sistemlerine yüklemek için, kaynak kodunu indirip derlemeyi tercih ediyorum.
Ancak, en sevdiğiniz paket yöneticisini kullanarak Python'u yükleyebilirsiniz.
(Örneğin, Ubuntu'da bu, komut satırında sudo apt-get install python
çalıştırmak kadar kolay olabilir.) Kaynaktan yüklemek için şu adımları uygulayın:
- Kaynak tarball dosyasını Python indirme sayfasından indirin.
- Paketi indirdikten sonra komut satırını kullanarak paketi açın. Aşağıdakileri kullanabilirsiniz:
tar zxvf Python-2.<Your version>.tgz
- Ardından, Python yorumcusunun kaynak kodunu derleyip yüklemeniz gerekir. Sıkıştırılmış dizinde bir
./configure
dosyası oluşturup oluşturma dosyası oluşturun. - Ardından
make
çalıştırın. Bu işlem, yerel dizinde çalışan bir Python yürütülebilir dosyası oluşturur. Kök izniniz yoksa veya yalnızca ana dizininizden Python kullanmak istiyorsanız burada durabilirsiniz. Bu dizinden Python'u çalıştırabileceğiniz için PATH ortam değişkeninize ekleyebilirsiniz. - Python'un
/usr/bin/
dilinde yüklenmesini tercih ediyorum. Çoğu Python komut dosyası çevirmeni arar. Kök erişiminiz varsa kök olarakmake install
çalıştırın. Bu işlem, Python'u varsayılan konuma yükler ve makinenizdeki herkes tarafından kullanılabilir. - Bir terminal açıp
python -V
çalıştırarak yüklemenizin beklendiği gibi çalışıp çalışmadığını kontrol edin.
Bağımlıları Yükleme
Şu anda tek harici bağımlılık ElementTree adlı bir XML kitaplığıdır. Python sürüm 2.5 veya daha yeni bir sürüm kullanıyorsanız, Python paketiyle birlikte geldiğinden ElementTree'yi yüklemeniz gerekmez.
ElementTree'in sisteminizde zaten bulunup bulunmadığını görmek için aşağıdakileri yapın:
- Python çevirmeni çalıştırın. Bunu genellikle komut satırında
python
çalıştırarak yürütüyorum. - ElementTree modülünü içe aktarmayı deneyin. Python 2.5 veya sonraki bir sürümü kullanıyorsanız yorumlayıcıya aşağıdaki bilgileri girin:
from xml.etree import ElementTree
Eski sürümler için:from elementtree import ElementTree
- İçe aktarma başarısız olursa bu bölümü okumaya devam etmeniz gerekir. Çalışıyorsa Google Veri kitaplığını yükleme bölümüne atlayabilirsiniz.
- İşletim sisteminize uygun bir sürüm indirin. Örneğin, Windows kullanıyorsanız Elementtree-1.2.6-20050316.win32.exe'yi indirin. Diğer işletim sistemlerinde, sıkıştırılmış bir sürüm indirmenizi öneririz.
- Kitaplığın
.tar.gz
veya.zip
sürümünü kullanıyorsanız önce paketi açın, ardından./setup.py install
'yi çalıştırarak yükleyin.
./setup.py install
çalıştırıldığında, kitaplık derlemeye ve Python modülleriniz için sistem dizinine yerleştirilmeye çalışılır. Kök erişiminiz yoksa ./setup.py install --home=~
programını çalıştırarak modülleri ana dizininize veya alternatif bir konuma yükleyebilirsiniz. Bu işlem, kodu ana dizininize yerleştirir.
Tamamen yüklenmesini önleyen bir seçenek daha vardır. İndirmeyi açtıktan sonra elementtree
adlı bir dizin görürsünüz. Bu dizin, içe aktarmanız gereken modülleri içerir. Python'un içinden içe aktarma yöntemini çağırdığınızda, modül birçok yerde istenen ada sahip bir modülü arar. İlk olarak mevcut dizinde yer alır. Dolayısıyla, kodunuzu her zaman tek bir dizinden çalıştırıyorsanız elementtree
dizinini ekleyebilirsiniz. Python, PYTHONPATH
ortam değişkeninizde listelenen dizinlere de bakar. PYTHONPATH
düzenlemeyle ilgili talimatlar için bu makalenin sonundaki Ek bölümüne bakın.
elementtree
için ./setup.py install
kullanmanızı öneririz.
Google Veri Kitaplığı'nı yükleme
Henüz yapmadıysanız Google Data Python kitaplığını indirin. En son sürümü Python projesinin indirmeler sayfasında bulabilirsiniz.
Kitaplığı indirdikten sonra, seçtiğiniz indirme türüne bağlı olarak unzip
veya tar zxvf
kullanarak paketi açın.
Artık kitaplık modüllerini Python'a aktarabilmeniz için yüklemeye hazırsınız. Bunu birkaç şekilde yapabilirsiniz:
- Tüm kullanıcıların erişebileceği paketleri yükleyebiliyorsanız
./setup.py install
paketini paketlenmemiş arşivin ana dizininde çalıştırabilirsiniz. - Bu modülleri ana dizininizde kullanmak üzere yüklemek isterseniz
./setup.py install --home=
<ana dizininiz> çalıştırabilirsiniz. Bazı durumlarda, modüllerin tamamını yüklemekten kaçınmanız gerekir. Bunu yapmak için
PYTHONPATH
ortam değişkeninizi, Google Data Python istemci kitaplığınıngdata
veatom
dizinlerini içeren bir dizin içerecek şekilde değiştirin.PYTHONPATH
cihazınızı değiştirme talimatları için bu makalenin sonundaki Ek bölümüne bakın.- Bahseteceğim bir başka seçenek de
gdata
veatom
dizinlerinisrc
dizinindenpython
işlemini yürüttüğünüz anda bulunduğunuz dizine kopyalamak. Bir içe aktarma yaptığınızda Python mevcut dizine bakar, ancak hızlı ve basit bir şey oluşturmuyorsanız bu yöntemi önermiyoruz.
Google Veri kitaplığını yükledikten sonra, bir test sürüşü için kitaplığı kullanmaya hazırsınız demektir.
Testleri ve Örnekleri Çalıştırma
Google Data Python istemci kitaplığı dağıtımlarında, kitaplığın geliştirilmesinde kullanılan bazı test durumları yer alır. Ayrıca, bağımlılarınızın ve kitaplık kurulumunuzun çalıştığından emin olmak için hızlı bir kontrol görevi de görebilirler. Kitaplık kopyanızı paketinden çıkardığınız en üst düzey dizinde koşmayı deneyin:
./tests/run_data_tests.py
Komut dosyası doğru çalışıyorsa komut satırında aşağıdaki gibi bir çıkış görürsünüz:
Running all tests in module gdata_test ....... ---------------------------------------------------------------------- Ran 7 tests in 0.025s OK Running all tests in module atom_test .......................................... ---------------------------------------------------------------------- Ran 42 tests in 0.016s OK ...
Testler yürütülürken herhangi bir hata görmediyseniz büyük olasılıkla ortamınızı doğru şekilde ayarlamışsınızdır. Tebrikler!
Artık daha ilgi çekici bir video yayınlayabilirsiniz. Dağıtım, uygulamanızı yazmaya başlamanız için başlangıç noktası sağlayabilecek bir kod içeren samples
dizini içerir. Basit bir etkileşimli örneği denemek isterseniz ./samples/docs/docs_example.py
komutunu çalıştırmayı deneyin.
Google Documents List API örneğinde, Google hesabınızın e-posta adresi ve şifresi sorulur. Google Dokümanlar'da dokümanlarınız veya e-tablolarınız varsa bunları seçtiğiniz işlem için 1
girerek listeleyebilirsiniz. (Belgeniz veya e-tablonuz yoksa 404 hatası alırsınız.)
"Hello World" Örneği Yazma
Basit bir örnekle başlayalım. Google Dokümanlar hesabınızdaki tüm belgelerin listesini yazdırmak için kısa bir programı aşağıda bulabilirsiniz:
import gdata.docs.service # Create a client class which will make HTTP requests with Google Docs server. client = gdata.docs.service.DocsService() # Authenticate using your Google Docs email address and password. client.ClientLogin('jo@gmail.com', 'password') # Query the server for an Atom feed containing a list of your documents. documents_feed = client.GetDocumentListFeed() # Loop through the feed and extract each document entry. for document_entry in documents_feed.entry: # Display the title of the document on the command line. print document_entry.title.text
Yukarıdaki kod snippet'ini bir dosya olarak kaydedip çalıştırın veya Google Data Python istemci kitaplığını çalışırken görmek için kodu Python yorumlayıcıya yapıştırın.
Sonuç
Google Data Python istemci kitaplığını yükleyip test ettiğinize göre, aşağıdakileri kullanarak bir sonraki mükemmel uygulamayı yazmaya hazırsınız:
- Google Analytics
- Blogger
- Kişiler
- Google Takvim
- Google Dokümanlar Listesi
- Sorun İzleyici
- Google Sites
- Google Haritalar
- Google E-Tablolar
- Google Search Console API'si
- YouTube
Uygulamanızı geliştirmeye devam ederken bir sorunla karşılaşabilirsiniz. Böyle bir durumda lütfen aşağıdaki kaynak listesine göz atın:
- Python istemci kitaplığı için ana sayfa
- Python istemci kitaplığı indirme işlemleri
- Python istemci kitaplığının kullanımı ile ilgili yardım için Wiki sayfaları
- Hatalar ve yakında sunulacak özellikler için Python istemci kitaplığı sorun izleyicisi
- Google Veri API'lerinin listesi
Kitaplık için yeni bir özellik düşünüyorsanız (veya rastlantısal bir hata bulursanız) lütfen tartışma grubuna girin. Geri bildirimleriniz bizim için her zaman önemlidir.
Keyifli kodlamalar :-)
Ek: PÎONPATH yolu değiştiriliyor
Python'da bir paketi veya modülü içe aktardığınızda çevirmen, dosyayı PYTHONPATH
ortam değişkeninde listelenen tüm dizinler dahil olmak üzere bir dizi konumda arar. Genellikle PYTHONPATH
kullandığım modülü, kullandığım bir kitaplığın kaynak kodunu kopyaladığım modüllere yönlendirecek şekilde değiştiriyorum. Python, değiştirilmiş kaynak kodunu içeren dizinden doğrudan modül yükleyeceğinden bu, bir modülün her değişmesinde yüklenme ihtiyacını ortadan kaldırır.
İstemci kitaplığı kodunda değişiklik yapıyorsanız veya sisteminizde yönetici haklarınız yoksa PYTHONPATH
yaklaşımını öneririz. PYTHONPATH
öğesini düzenleyerek gerekli modülleri istediğiniz gibi yerleştirebilirsiniz.
*nix ve Mac OS X sistemlerimde PYTHONPATH
cihazını .bashrc
kabuk yapılandırma dosyamda ayarlayarak değiştirdim.
Bash kabuğu kullanıyorsanız aşağıdaki satırı ~/.bashrc
dosyanıza ekleyerek değişkeni ayarlayabilirsiniz.
export PYTHONPATH=$PYTHONPATH:/home/<my_username>/svn/gdata-python-client/src
Ardından, source ~/.bashrc
yöntemini çalıştırarak bu değişiklikleri mevcut kabuk oturumunuza uygulayabilirsiniz.
Windows XP'de profilinizin Ortam Değişkenlerini ayarlayın: Denetim Masası > Sistem Özellikleri > Gelişmiş > Ortam Değişkenleri. Buradan PYTHONPATH
değişkenini oluşturabilir veya düzenleyebilir ve yerel kitaplık kopyanızın konumunu ekleyebilirsiniz.