Hitung tayangan halaman, bukan orangnya. Analitik web yang memprioritaskan privasi, disimpan dengan aman di UE.
BETA TERBUKA
Hitung tayangan halaman, bukan orangnya. Analitik web yang memprioritaskan privasi, disimpan dengan aman di UE.

Tabel Pencarian Agen Pengguna Sumber Terbuka

Dataset pencarian agen pengguna sumber terbuka dengan perilaku yang dapat diprediksi. Berbasis JSON, ditinjau manusia, dan dirancang untuk keperluan analitik praktis.
Halaman ini telah diterjemahkan dari bahasa Inggris oleh para magang AI kami yang sangat termotivasi demi kenyamanan Anda. Mereka masih belajar, jadi mungkin ada beberapa kesalahan yang terlewat. Untuk informasi yang paling akurat, silakan merujuk ke versi bahasa Inggrisnya.
Rumah Proyek Sumber Terbuka Tabel Pencarian Agen Pengguna Sumber Terbuka

Repositori ini berisi kumpulan data agen pengguna yang telah dinormalisasi dan dikurasi, disimpan sebagai berkas JSON, dan dirancang untuk digunakan sebagai tabel lookup guna memperoleh data agen pengguna yang sederhana, seperti klien agen pengguna dan sistem operasi.

Ini digunakan sebagai komponen PageviewsOnline, tetapi dipublikasikan di sini untuk penggunaan umum.

Dataset ini dilengkapi dengan skrip pembantu sederhana untuk memvalidasi data dan mengekspornya ke format lain atau bahasa pemrograman (seperti Java).

Filosofi Proyek

Tujuan proyek ini bukan untuk menyediakan sistem deteksi user-agent yang benar-benar kebal terhadap kesalahan atau sepenuhnya akurat, tetapi lebih sebagai solusi praktis dengan upaya terbaik yang berkembang seiring waktu melalui penggunaan di dunia nyata dan kontribusi komunitas.

Deteksi agen pengguna secara inheren tidak sempurna. Alih-alih mengejar akurasi penuh, proyek ini fokus pada menjadi:

  • Praktis
  • Mudah dipelihara
  • Transparan
  • Cukup andal untuk analitik dan klasifikasi dunia nyata

Akurasi meningkat seiring waktu melalui pembaruan terkurasi, penggunaan di dunia nyata, dan kontribusi komunitas.

Penguraian heuristik dan ekspresi reguler yang kompleks sering kali mengorbankan prediktabilitas demi peningkatan akurasi yang marginal.

Proyek ini lebih mengutamakan:

  • Transparansi lebih penting daripada keajaiban
  • Data terkurasi lebih diutamakan daripada logika yang tidak transparan
  • Hasil yang dapat dijelaskan lebih diutamakan daripada deteksi spekulatif

Fitur

  • Kumpulan data agen pengguna yang telah dinormalisasi dan ditinjau secara manual
  • Perilaku pencarian yang sederhana dan dapat diprediksi
  • Format berbasis JSON, mudah diperiksa dan menggunakan kontrol versi
  • Skrip validasi ringan
  • Ekspor helper untuk bahasa lain (mis. Java)
  • Digunakan secara aktif dalam lingkungan SaaS produksi

String Agen Pengguna Terstandarisasi

Tujuan utama proyek ini adalah mengekstrak informasi tingkat tinggi yang stabil dari deretan string user agent dengan cara yang cepat dan dapat diprediksi.

Untuk mendukung hal ini, setiap string agen pengguna dinormalisasi sebelum diproses. Normalisasi menghilangkan variasi yang tidak stabil (seperti nomor versi dan perbedaan huruf besar/kecil) sambil mempertahankan makna struktural dan semantik dari agen pengguna.

String agen pengguna dinormalisasi menggunakan langkah-langkah berikut:

  • Gantilah semua digit numerik (0-9) dengan karakter placeholder x. Ini menghilangkan gangguan yang disebabkan oleh perubahan versi sambil mempertahankan struktur token dan panjangnya.
  • Ubah seluruh string menjadi huruf kecil. Token agen pengguna tidak membedakan huruf besar-kecil secara konvensional, dan penggunaan huruf kecil memastikan pencarian yang konsisten dan andal.

Sebagai contoh, string agen pengguna berikut:

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36

Dinormalisasi menjadi:

mozilla/x.x (windows nt xx.x; winxx; xxx) applewebkit/xxx.xx (khtml, like gecko) chrome/xxx.x.x.x safari/xxx.xx

Pendekatan normalisasi ini memudahkan pengelompokan, perbandingan, dan pemeliharaan agen pengguna seiring waktu, sambil tetap cukup akurat untuk klasifikasi tingkat tinggi terhadap klien dan sistem operasi.

Dengan menghilangkan variasi yang spesifik terhadap versi dan terkait kapitalisasi, proses pencarian menjadi lebih dapat diprediksi dan tahan terhadap perubahan agen pengguna di masa mendatang.

Format Data

Setiap entri agen pengguna yang telah dinormalisasi mencakup:

  • id - String agen pengguna yang dinormalisasi
  • client_family - Klasifikasi klien tingkat tinggi (mis. browser, bot, app)
  • os_family - Klasifikasi tingkat tinggi sistem operasi

Kolom-kolom tertentu mungkin berubah seiring pertumbuhan dataset.

Perilaku Pencarian

Pencocokan agen pengguna dilakukan terhadap string yang dinormalisasi.

Kecocokan yang tepat diutamakan; kecocokan parsial atau berbasis heuristik sengaja dihindari agar perilaku tetap terprediksi dan mudah di-debug.

Kontribusi

Kontribusi sangat kami hargai dan membantu meningkatkan kualitas serta akurasi proyek ini secara keseluruhan.

Cara paling berdampak untuk berkontribusi adalah dengan menambahkan atau memperbarui entri user agent yang telah dinormalisasi dalam file user_agents.json, beserta data klasifikasi terkait yang relevan.

Setelah perubahan Anda siap, silakan ajukan pull request yang berisi data dan/atau pembaruan kode yang diperlukan.

Bahkan informasi yang sebagian atau tidak lengkap pun berguna dan dihargai - setiap kontribusi membantu meningkatkan cakupan dan keandalan jangka panjang.

Mulai (Panduan Cepat)

Inti dari proyek ini adalah kumpulan berkas data JSON, yang terletak di direktori data/.

Untuk membantu memelihara dan menggunakan kembali data ini, repositori ini menyertakan sejumlah kecil skrip Node.js sederhana yang melakukan validasi dasar dan tugas ekspor.

Perintah yang tersedia secara umum:

  • npm run test - Memvalidasi data JSON dan memeriksa adanya kesalahan struktural atau inkonsistensi.
  • npm run build - Membuat, mengurutkan, dan mengekspor data yang telah dinormalisasi ke format bahasa pemrograman lain (seperti Java) untuk integrasi yang lebih mudah.

Alat-alat ini sengaja minimal, berfokus pada keakuratan data dan portabilitas daripada pemrosesan yang kompleks.

User-Agent Strings Tidak Dapat Diandalkan

Menarik informasi yang akurat dari deretan string agen pengguna secara inheren tidak dapat diandalkan karena beberapa alasan:

  • Tidak ada standar formal atau spesifikasi yang mengatur struktur atau isi string user-agent.
  • Banyak agen pengguna sengaja menyamarkan identitasnya atau meniru agen pengguna lain demi alasan kompatibilitas dan warisan

Karena hal ini, sangat sulit untuk menentukan data user-agent secara akurat dan konsisten.

Oleh karena itu pustaka ini sebaiknya dipandang sebagai solusi terbaik yang bersifat upaya, bukan sumber kebenaran yang dijamin atau otoritatif.

Dengan penggunaan yang berkelanjutan dan kontribusi komunitas, akurasi dapat meningkat seiring waktu.

Pengelolaan Versi & Stabilitas

Dataset dapat berubah seiring waktu saat agen pengguna berkembang.

Klasifikasi tidak dianggap sebagai perubahan yang memutus kompatibilitas, bahkan di antara versi minor.

Konsumen sebaiknya menganggap hasilnya sebagai petunjuk terbaik, bukan jaminan kontraktual.

Lisensi

Proyek ini beserta datanya dirilis di bawah Apache License 2.0 (Apache-2-0).

Penggunaan komersial, modifikasi, dan pendistribusian ulang diizinkan.

Kontribusi sangat kami sambut dan hargai.

Merek Dagang

PageviewsOnline, Two-Dot-Oh, dan logo-logo terkait, nama-nama layanan, atau branding apa pun merupakan merek dagang dari Two-Dot-Oh.

Proyek ini bersifat sumber terbuka; namun, penggunaan nama PageviewsOnline atau merek terkait apa pun sehubungan dengan produk, layanan, atau tawaran tidak diizinkan tanpa persetujuan tertulis sebelumnya.

Forks dan karya turunan harus menggunakan nama dan branding yang berbeda dan tidak boleh menyiratkan dukungan atau afiliasi dengan PageviewsOnline atau Two-Dot-Oh.