Merhaba, bu yazımda data science ile haşır neşir olan çoğu kişinin bileceği Kaggle websitesi içerisinde yaptığımız işlemleri CLI üzerinde yapmayı göstereceğim.
Yazının içeriğinde aşağıdaki maddeleri göreceğiz.
- Kaggle API’yi local environment üzerinde tanıtma.
- Kaggle API komutları.
- Kaggle API ile public bir veri setini indirme.
- İndirilen veri setini zip halindeyse extract etme
adımlarını göreceğiz.
Hazırsanız başlayalım.
https://www.kaggle.com/ üzerinden Kaggle hesabımıza giriş yapalım.
Sağ üstteki profil fotoğrafımızın olduğu alana tıklayıp Account sekmesine girelim.
API bölümünden Create New API Tokeni seçelim, Kaggle bize kullanıcı adımızın ve API keyimizin olduğu bir JSON dosyası verecek.
Terminali açalım ve pip install kaggle
ile Kaggle kütüphanesini yükleyelim.
Alternatif iki yol paylaşacağım.
1. Yöntem
İndirdiğimiz kaggle.json dosyasını açarak içerisindeki kullanıcı adı ve api keyi aşağıdaki şekilde terminalden tanıtalım.
export KAGGLE_USERNAME=oguzerdo
export KAGGLE_KEY=xxxxxxxxxxxxxx
Yukarıdaki işlemleri doğru bir şekilde yaptıysak artık Kaggle API’sini kullanabilmemiz gerekiyor.
2. Yöntem
İndirdiğiniz kaggle.json
dosyasını kök dizin üzerinde .kaggle
isimli bir klasöre taşıyın. (Klasör yoksa oluşturabilirsiniz)
kaggle.json
dosyasına chmod 600
ile yetkilendirme ayarlarını yapın.
Mac ya da Linux kullanıcıları aşağıdaki işlemleri direkt uygulayabilir.
mkdir ~/.kaggle
mv ~/Downloads/kaggle.json ~/.kaggle
chmod 600 .kaggle/kaggle.json
Windows kullanıcıları da aşağıdaki dizinde benzer işlemleri uygulayabilir.
C:\Users\<Windows-username>\.kaggle\kaggle.json
Tüm işlemleri doğru bir şekilde uyguladıysak, ufak bir test yapalım. Veri setlerini listelemek için aşağıdaki komutu terminalden giriyorum.
kaggle datasets list
Aşağıda Kaggle API ile kullanabileceğiz komutları paylaştığım döküman sayfasında görebilirsiniz.
https://github.com/Kaggle/kaggle-api#api-credentials
Public bir veri setini Kaggle API ile indirme
Şimdi de public bir veri setini Kaggle API kullanarak indirmeye çalışalım.
Kaggle içerisinde bir e-commerce şirketine ait birden fazla tablodan oluşan veri setlerini indirmek istiyorum.
İndirmek istediğim veri setinin bağlantısı https://www.kaggle.com/datasets/olistbr/brazilian-ecommerce
URL kısmındaki datasets/ ten sonraki kısım olan olistbr/brazilian-ecommerce yi kopyalıyorum.
kaggle datasets download olistbr/brazilian-ecommerce
ile bu veri setini indiriyorum.
Spesifik bir lokasyona veri setini indirmek istiyorsam eğer -p parametresi ile bunu belirtebilirim.
Kök dizindeki datasets
isimli bir klasöre indirmek için örneğin ;
kaggle datasets download olistbr/brazilian-ecommerce -p ~/datasets
Zipli dosyaları terminal üzerinden Zip halinden çıkartmak için de aşağıdaki unzip kullanabilirsiniz.
unzip ~/datasets/brazilian-ecommerce.zip -d ~/datasets
-d ~/datasets
parametresini bulundukları dizin içerisine çıkartması için yazdım.
Bu yazımda Kaggle API komutlarını terminalde çalıştırmayı ve public bir veri setini nasıl indirebileceğimizi gösterdim.
Bir sonraki yazımda bu işlemleri Airflow üzerinde yaparak public bir veri setini kaggle üzerinden indirmeyi ve bunları PostgreSQL veritabanına aktarmayı göstereceğim.
Sağlıcakla kalın.