Analisis Performa Kata Kunci dengan Python dan Google Search Console

Pinterest LinkedIn Tumblr +

Menggunakan Python untuk menganalisis performa kata kunci melalui Google Search Console (GSC) adalah salah satu cara yang efektif untuk meningkatkan SEO. Dengan bantuan Python, kita bisa secara otomatis menarik data dari GSC, memprosesnya, dan mengambil insight yang bermanfaat untuk mengoptimalkan strategi konten kita. Artikel ini akan membahas langkah-langkah persiapan Google Cloud Console, otentikasi, hingga penulisan script Python yang dapat digunakan untuk menganalisis performa kata kunci.

Tahap Persiapan Google Cloud Console

  1. Buat Proyek di Google Cloud Console
    Langkah pertama adalah memastikan kita memiliki akun Google dan terdaftar di Google Cloud Console. Di sini, kita akan membuat sebuah proyek baru untuk menggunakan API Google Search Console.

    • Buka Google Cloud Console.
    • Klik tombol “Create Project” dan beri nama proyek Anda (misalnya, “Analisis SEO”).
    • Setelah proyek dibuat, pilih proyek tersebut di dashboard.
  2. Aktifkan API Search Console
    Setelah membuat proyek, kita perlu mengaktifkan API untuk Search Console. Caranya:

    • Pilih proyek yang telah dibuat.
    • Buka menu API & Services, kemudian klik “Enable APIs and Services”.
    • Cari “Search Console API” di kolom pencarian dan aktifkan.
  3. Buat Kredensial OAuth 2.0
    API Google Search Console memerlukan otentikasi OAuth 2.0 untuk bisa mengakses data. Kita perlu membuat kredensial berikut:

    • Masuk ke API & Services -> Credentials.
    • Klik “Create Credentials” dan pilih OAuth 2.0 Client ID.
    • Pilih tipe aplikasi “Desktop app” dan unduh file client_secret.json.

    File client_secret.json inilah yang nantinya digunakan oleh script Python untuk otentikasi ke Google Search Console.

Tahap Penulisan Script Python

Setelah persiapan selesai, kita dapat mulai menulis script Python untuk mengambil data performa kata kunci dari Google Search Console. Di sini, kita akan membagi script menjadi tiga file utama: auth.py, analyze.py, dan main.py.

1. File auth.py

Script ini digunakan untuk melakukan otentikasi ke Google Search Console API. Berikut adalah script lengkapnya:

import os
from google.auth.transport.requests import Request
from google.oauth2.credentials import Credentials
from google_auth_oauthlib.flow import InstalledAppFlow
from googleapiclient.discovery import build

CREDENTIALS_FILE = '/contoh_folder/client_secret.json'
SCOPES = ['https://www.googleapis.com/auth/webmasters.readonly']

def authenticate_google_search_console():
    creds = None
    if os.path.exists('token.json'):
        creds = Credentials.from_authorized_user_file('token.json', SCOPES)
    
    if not creds or not creds.valid:
        if creds and creds.expired and creds.refresh_token:
            creds.refresh(Request())
        else:
            flow = InstalledAppFlow.from_client_secrets_file(CREDENTIALS_FILE, SCOPES)
            creds = flow.run_local_server(port=0)
        
        with open('token.json', 'w') as token:
            token.write(creds.to_json())

    service = build('webmasters', 'v3', credentials=creds)
    return service

Pada script ini, fungsi authenticate_google_search_console() bertanggung jawab untuk menangani proses otentikasi. File client_secret.json yang dihasilkan dari Google Cloud Console harus diletakkan sesuai dengan path di variabel CREDENTIALS_FILE.

2. File analyze.py

Setelah kita berhasil mengambil data dari Google Search Console, langkah selanjutnya adalah menganalisisnya. Untuk ini, kita menggunakan pandas untuk memproses data dalam bentuk dataframe.

import pandas as pd

def analyze_search_data(search_data):
    queries, pages, devices, countries, clicks, impressions, ctrs, positions = [], [], [], [], [], [], [], []
    
    for row in search_data:
        keys = row['keys']
        queries.append(keys[0])
        pages.append(keys[1])
        devices.append(keys[2])
        countries.append(keys[3])
        clicks.append(row['clicks'])
        impressions.append(row['impressions'])
        ctrs.append(row['ctr'])
        positions.append(row['position'])
    
    df = pd.DataFrame({
        'query': queries,
        'page': pages,
        'device': devices,
        'country': countries,
        'clicks': clicks,
        'impressions': impressions,
        'ctr': ctrs,
        'position': positions
    })
    
    print("Top queries by clicks:")
    print(df.groupby('query').sum().sort_values('clicks', ascending=False).head(10))
    
    return df

Fungsi analyze_search_data() ini bertujuan untuk mengelompokkan data berdasarkan query, halaman, device, negara, serta memberikan hasil analisis seperti jumlah klik, impresi, dan rata-rata posisi dari kata kunci yang diteliti.

3. File main.py

File utama ini akan menggabungkan semua fungsi yang telah kita buat sebelumnya. Berikut adalah script lengkapnya:

from auth import authenticate_google_search_console
from site_operations import list_verified_sites, get_search_analytics_data
from analyze import analyze_search_data

if __name__ == "__main__":
    service = authenticate_google_search_console()

    # List all verified sites
    verified_sites = list_verified_sites(service)

    # Example: Get search analytics data for one site
    site_url = 'https://www.web-example.com'
    start_date = '2023-01-01'
    end_date = '2023-12-31'
    dimensions = ['query', 'page', 'device', 'country']
    
    search_data = get_search_analytics_data(service, site_url, start_date, end_date, dimensions)

    # Analyze the search data
    df = analyze_search_data(search_data)

    # Save to CSV
    df.to_csv('search_console_data_dkonten.csv', index=False)

Pada file ini, kita menghubungkan semua komponen:

  • authenticate_google_search_console() untuk otentikasi ke Google Search Console.
  • list_verified_sites() dan get_search_analytics_data() digunakan untuk menarik data analitik dari Search Console.
  • analyze_search_data() untuk menganalisis data yang telah diambil.

Contoh Analisis Data

Setelah menjalankan script ini, data dari Google Search Console seperti kata kunci, halaman, device, dan negara akan ditampilkan dalam bentuk tabel. Dari sini, kita bisa melihat insight penting seperti:

  • Kata Kunci dengan Klik Tertinggi: Melalui analisis ini, kita bisa tahu kata kunci mana yang mendatangkan paling banyak klik. Misalnya:
Top queries by clicks:
            clicks  impressions   ctr  position
query                                          
kata kunci A     500         3000  0.15      1.5
kata kunci B     400         2500  0.16      2.0

Dari hasil tersebut, kita bisa mengoptimalkan strategi konten untuk fokus pada kata kunci yang memiliki potensi klik tertinggi atau meningkatkan kata kunci yang belum optimal.

Kesimpulan

Dengan memanfaatkan Python dan Google Search Console API, kita dapat secara efisien menganalisis performa kata kunci tertentu. Proses ini tidak hanya menghemat waktu tetapi juga membantu kita untuk mendapatkan insight yang lebih dalam untuk meningkatkan strategi SEO. Pastikan untuk mengotentikasi akses ke API dengan benar dan menggunakan script yang sudah disesuaikan untuk mengakses data yang Anda butuhkan.

BACA JUGA  3 Faktor SEO yang Nggak Mungkin Kamu Kendalikan, Tapi Bisa Bikin Website Kamu Sukses!
Share.

About Author

I am a Full-Stack Developer who loves to translate designs files into Website and Application, Based in Bandar Lampung - Indonesia

Comments are closed.