Bu eğitimde, Analytics Reporting API v4'e erişmek için gereken adımlar açıklanmaktadır.
1. API'yi etkinleştirme
Analytics Reporting API v4'ü kullanmaya başlamak için önce Google API Konsolu'nda proje oluşturma, API'yi etkinleştirme ve kimlik bilgileri oluşturma konusunda size yol gösterecek olan kurulum aracını kullanmanız gerekir.
Kimlik bilgileri oluştur
- Hizmet hesapları sayfasını açın. İstenirse bir proje seçin.
- Hizmet Hesabı Oluştur'u tıklayın, hizmet hesabı için bir ad ve açıklama girin. Varsayılan hizmet hesabı kimliğini kullanabilir veya farklı, benzersiz bir tane seçebilirsiniz. Tamamladıktan sonra Oluştur'u tıklayın.
- Sonraki Hizmet hesabı izinleri (isteğe bağlı) bölümü gerekli değildir. Devam'ı tıklayın.
- Kullanıcıların bu hizmet hesabına erişmelerine izin ver ekranında, Anahtar oluştur bölümüne gidin. Anahtar oluştur'u tıklayın.
- Görüntülenen yan panelde anahtar biçimini seçin: JSON önerilir.
- Create'i (Oluştur) tıklayın. Herkese açık/özel yeni anahtar çiftiniz oluşturulur ve makinenize indirilir; bu anahtarın tek kopyası olarak işlev görür. Güvenli şekilde nasıl depolanacağını öğrenmek için Hizmet hesabı anahtarlarını yönetme konusuna bakın.
- Özel anahtar bilgisayarınıza kaydedildi iletişiminde Kapat'ı tıklayın. Ardından hizmet hesapları tablosuna dönmek için Tamam'ı tıklayın.
Google Analytics hesabına hizmet hesabı ekleyin
Yeni oluşturulan hizmet hesabı şuna benzer bir e-posta adresine sahip olur:
quickstart@PROJECT-ID.iam.gserviceaccount.com
API aracılığıyla erişmek istediğiniz Google Analytics görünümüne bir kullanıcı eklemek için bu e-posta adresini kullanın. Bu eğitim için yalnızca Okuma ve Analiz izinleri gereklidir.
2. İstemci kitaplığını yükleme
Python paketlerini yüklemek için pip ile venv birlikte kullanılması önerilir: sudo -s apt-get install python3-venv python3 -m venv analytics-quickstart source analytics-quickstart/bin/activate pip install --upgrade client-api-python-client pip install --upgrade oauth
3. Örneği oluşturun
Belirtilen örnek kodu içeren HelloAnalytics.py
adında tek bir dosya oluşturmanız gerekir.
- Aşağıdaki kaynak kodunu
HelloAnalytics.py
hizmetine kopyalayın veya indirin. - Daha önce indirilen
client_secrets.json
öğesini örnek kodla aynı dizine taşıyın. KEY_FILE_LOCATION
değerini, indirilenclient_secrets.json
öğesinin uygun yoluyla değiştirin.VIEW_ID
değerini değiştirin. Bir Görünüm Kimliği'ni bulmak için Hesap Gezgini'ni kullanabilirsiniz.
"""Hello Analytics Reporting API V4.""" from apiclient.discovery import build from oauth2client.service_account import ServiceAccountCredentials SCOPES = ['https://www.googleapis.com/auth/analytics.readonly'] KEY_FILE_LOCATION = '<REPLACE_WITH_JSON_FILE>' VIEW_ID = '<REPLACE_WITH_VIEW_ID>' def initialize_analyticsreporting(): """Initializes an Analytics Reporting API V4 service object. Returns: An authorized Analytics Reporting API V4 service object. """ credentials = ServiceAccountCredentials.from_json_keyfile_name( KEY_FILE_LOCATION, SCOPES) # Build the service object. analytics = build('analyticsreporting', 'v4', credentials=credentials) return analytics def get_report(analytics): """Queries the Analytics Reporting API V4. Args: analytics: An authorized Analytics Reporting API V4 service object. Returns: The Analytics Reporting API V4 response. """ return analytics.reports().batchGet( body={ 'reportRequests': [ { 'viewId': VIEW_ID, 'dateRanges': [{'startDate': '7daysAgo', 'endDate': 'today'}], 'metrics': [{'expression': 'ga:sessions'}], 'dimensions': [{'name': 'ga:country'}] }] } ).execute() def print_response(response): """Parses and prints the Analytics Reporting API V4 response. Args: response: An Analytics Reporting API V4 response. """ for report in response.get('reports', []): columnHeader = report.get('columnHeader', {}) dimensionHeaders = columnHeader.get('dimensions', []) metricHeaders = columnHeader.get('metricHeader', {}).get('metricHeaderEntries', []) for row in report.get('data', {}).get('rows', []): dimensions = row.get('dimensions', []) dateRangeValues = row.get('metrics', []) for header, dimension in zip(dimensionHeaders, dimensions): print(header + ': ', dimension) for i, values in enumerate(dateRangeValues): print('Date range:', str(i)) for metricHeader, value in zip(metricHeaders, values.get('values')): print(metricHeader.get('name') + ':', value) def main(): analytics = initialize_analyticsreporting() response = get_report(analytics) print_response(response) if __name__ == '__main__': main()
4. Örneği çalıştır
Şunu kullanarak örneği çalıştırın:
python HelloAnalytics.py
Bu adımları tamamladığınızda, örnek, belirtilen görünüm için son yedi gündeki oturum sayısını verir.
Sorun giderme
AttributeError: "Module_six_moves_urllib_parse" nesnesi "urlparse" özelliğine sahip değil
Bu hata, "altı" modülünün (bu kitaplığın bağımlılığı) varsayılan yüklemesinin, pip'in yüklediği modülden önce yüklendiği Mac OSX'te ortaya çıkabilir. Sorunu düzeltmek için pip'in yükleme konumunu PYTHONPATH
sistem ortamı değişkenine ekleyin:
Aşağıdaki komutla pip'in yükleme konumunu belirleyin:
pip altı göster | grep "Location:" | kes -d " " -f2
<pip_install_path>
kısmını yukarıda belirtilen değerle değiştirerek aşağıdaki satırı~/.bashrc
dosyanıza ekleyin:dışa aktar PYTHONPATH=$PYTHONPATH:<pip_install_path>
Aşağıdaki komutu kullanarak açık terminal pencerelerinde
~/.bashrc
dosyanızı yeniden yükleyin:kaynak ~/.bashrc