Tutorial ini membahas langkah-langkah yang diperlukan untuk mengakses akun Google Analytics, mengkueri API Analytics, menangani respons API, dan menampilkan hasilnya. Core Reporting API v3.0, Management API v3.0, dan OAuth2.0 digunakan dalam tutorial ini.
Langkah 1: Aktifkan Analytics API
Untuk mulai menggunakan Google Analytics API, Anda harus terlebih dahulu menggunakan alat penyiapan, yang memandu Anda menyelesaikan pembuatan project di Konsol API Google, mengaktifkan API, dan membuat kredensial.
Membuat client ID
- Buka halaman Akun layanan. Jika diminta, pilih sebuah project.
- Klik Buat Akun Layanan, masukkan nama dan deskripsi untuk akun layanan. Anda dapat menggunakan ID akun layanan default, atau memilih ID yang berbeda dan unik. Setelah selesai, klik Buat.
- Bagian Izin akun layanan (opsional) yang ditampilkan setelahnya tidak diperlukan. Klik Lanjutkan.
- Pada layar Beri pengguna akses ke akun layanan ini, scroll ke bawah ke bagian Buat kunci. Klik Buat kunci.
- Di panel samping yang ditampilkan, pilih format untuk kunci Anda: JSON direkomendasikan.
- Klik Create. Pasangan kunci umum/pribadi baru Anda dibuat dan didownload ke komputer, dan berfungsi sebagai satu-satunya salinan dari kunci ini. Untuk informasi cara menyimpannya dengan aman, lihat Mengelola kunci akun layanan.
- Klik Tutup pada dialog Kunci pribadi disimpan ke komputer Anda, lalu klik Selesai untuk kembali ke tabel akun layanan.
Tambahkan akun layanan ke akun Google Analytics
Akun layanan yang baru dibuat akan memiliki alamat email,
<projectId>-<uniqueId>@developer.gserviceaccount.com
;
Gunakan alamat email ini untuk
menambahkan
pengguna ke akun Google Analytics yang ingin Anda akses melalui API.
Untuk tutorial ini, hanya izin Baca & Analisis yang diperlukan.
Langkah 2: Instal Library Klien Google
Anda dapat menggunakan pengelola paket atau mendownload dan menginstal library klien Python secara manual:
pip
Gunakan pip, alat yang direkomendasikan untuk menginstal paket Python:
sudo pip install --upgrade google-api-python-client
Alat penyiapan
Gunakan alat easy_install yang disertakan dalam paket setuptools:
sudo easy_install --upgrade google-api-python-client
Penginstalan manual
Download library klien untuk python terbaru, ekstrak kodenya, lalu jalankan:
sudo python setup.py install
Anda mungkin perlu memanggil perintah dengan hak istimewa superuser (sudo
)
untuk menginstal ke sistem Python.
Langkah 3: Siapkan contoh
Anda harus membuat satu file bernama HelloAnalytics.py
, yang akan berisi kode contoh yang diberikan.
- Salin atau
download kode sumber berikut ke
HelloAnalytics.py
. - Pindahkan
client_secrets.json
yang telah didownload sebelumnya ke dalam direktori yang sama dengan kode contoh. - Ganti nilai
key_file_location
dengan nilai yang sesuai dari Konsol Play.
"""A simple example of how to access the Google Analytics API.""" from apiclient.discovery import build from oauth2client.service_account import ServiceAccountCredentials def get_service(api_name, api_version, scopes, key_file_location): """Get a service that communicates to a Google API. Args: api_name: The name of the api to connect to. api_version: The api version to connect to. scopes: A list auth scopes to authorize for the application. key_file_location: The path to a valid service account JSON key file. Returns: A service that is connected to the specified API. """ credentials = ServiceAccountCredentials.from_json_keyfile_name( key_file_location, scopes=scopes) # Build the service object. service = build(api_name, api_version, credentials=credentials) return service def get_first_profile_id(service): # Use the Analytics service object to get the first profile id. # Get a list of all Google Analytics accounts for this user accounts = service.management().accounts().list().execute() if accounts.get('items'): # Get the first Google Analytics account. account = accounts.get('items')[0].get('id') # Get a list of all the properties for the first account. properties = service.management().webproperties().list( accountId=account).execute() if properties.get('items'): # Get the first property id. property = properties.get('items')[0].get('id') # Get a list of all views (profiles) for the first property. profiles = service.management().profiles().list( accountId=account, webPropertyId=property).execute() if profiles.get('items'): # return the first view (profile) id. return profiles.get('items')[0].get('id') return None def get_results(service, profile_id): # Use the Analytics Service Object to query the Core Reporting API # for the number of sessions within the past seven days. return service.data().ga().get( ids='ga:' + profile_id, start_date='7daysAgo', end_date='today', metrics='ga:sessions').execute() def print_results(results): # Print data nicely for the user. if results: print 'View (Profile):', results.get('profileInfo').get('profileName') print 'Total Sessions:', results.get('rows')[0][0] else: print 'No results found' def main(): # Define the auth scopes to request. scope = 'https://www.googleapis.com/auth/analytics.readonly' key_file_location = '<REPLACE_WITH_JSON_FILE>' # Authenticate and construct service. service = get_service( api_name='analytics', api_version='v3', scopes=[scope], key_file_location=key_file_location) profile_id = get_first_profile_id(service) print_results(get_results(service, profile_id)) if __name__ == '__main__': main()
Langkah 4: Jalankan contoh
Setelah Anda mengaktifkan Analytics API, instal library klien Google API untuk Python, dan siapkan kode sumber contoh, contoh siap dijalankan.
Jalankan contoh menggunakan:
python HelloAnalytics.py
Setelah menyelesaikan langkah-langkah ini, contoh akan menghasilkan nama tampilan (profil) Google Analytics pertama dari pengguna yang diotorisasi dan jumlah sesi selama tujuh hari terakhir.
Dengan objek layanan Analytics resmi, Anda kini dapat menjalankan contoh kode apa pun yang ada di dokumen referensi Management API. Misalnya, Anda dapat mengubah kode untuk menggunakan metode accountSummaries.list.
Pemecahan masalah
AttributeError: Objek 'Module_six_moves_urllib_parse' tidak memiliki atribut 'urlparse'
Error ini dapat terjadi di Mac OSX, karena penginstalan default modul "enam" (dependensi library ini) dimuat sebelum modul yang diinstal pip. Untuk memperbaiki masalah ini, tambahkan lokasi penginstalan pip ke variabel lingkungan sistem PYTHONPATH
:
-
Tentukan lokasi penginstalan pip dengan perintah berikut:
pip show six | grep "Location:" | cut -d " " -f2
-
Tambahkan baris berikut ke file
~/.bashrc
Anda, dengan menggantikan<pip_install_path>
dengan nilai yang ditentukan di atas:export PYTHONPATH=$PYTHONPATH:<pip_install_path>
-
Muat ulang file
~/.bashrc
Anda di jendela terminal yang terbuka menggunakan perintah berikut:source ~/.bashrc