Generator User Agent Acak - Buat String Peramban
Hasilkan string user agent otentik untuk Chrome, Firefox, Safari, dan Edge. Uji kompatibilitas peramban, desain responsif, dan API dengan pengenal peramban yang realistis.
Generator User Agent Acak
Hasilkan string user agent peramban yang acak dan realistis untuk pengujian pengembangan web.
User Agent yang Dihasilkan
Dokumentasi
Generator Agen Pengguna Acak
Generator agen pengguna acak membuat contoh string agen pengguna, yaitu baris teks singkat yang dikirim peramban web ke situs untuk mengidentifikasi dirinya. Alat ini membuat string yang mengikuti format nyata yang digunakan Chrome, Firefox, Safari, dan Edge, baik pada perangkat desktop maupun seluler, sehingga pengembang dapat menguji respons situs terhadap berbagai peramban tanpa memasang masing-masingnya.
Apa Itu String Agen Pengguna?
Setiap kali peramban meminta halaman web, peramban mengirim header HTTP User-Agent. Header tersebut berupa satu baris teks yang menjelaskan nama peramban, versinya, sistem operasi, dan mesin render (bagian peramban yang menggambar halaman). Situs dapat membaca header ini untuk menentukan tata letak halaman atau fitur yang akan dikirimkan.
String agen pengguna yang umum terlihat seperti ini:
1Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36
2Hampir setiap peramban mengawali stringnya dengan "Mozilla/5.0". Ini merupakan peninggalan dari tahun 1990-an, ketika situs memeriksa kata tersebut untuk menentukan apakah suatu peramban cukup mampu menampilkan halaman. Peramban yang lebih baru mempertahankan token itu agar tidak diblokir oleh pemeriksaan lama.
Cara Kerja Generator Ini
Alat ini memiliki tiga kontrol:
- Jenis Perangkat – Desktop atau Seluler.
- Keluarga Peramban – Chrome, Firefox, Safari, atau Edge.
- Sistem Operasi – Windows, macOS, atau Linux untuk desktop; iOS atau Android untuk perangkat seluler.
Tidak semua kombinasi ada di dunia nyata, sehingga alat ini membatasi pilihan. Safari hanya muncul pada macOS dan iOS karena Apple tidak menyediakan Safari untuk Windows, Linux, atau Android. Chrome, Firefox, dan Edge tersedia pada setiap sistem operasi yang tercantum, termasuk iOS, tempat ketiganya berjalan sebagai lapisan di atas mesin WebKit milik Apple, bukan mesin mereka sendiri.
Mengeklik "Buat Baru" akan membuat string dari ketiga pengaturan tersebut dan nomor versi yang dipilih secara acak. Tombol "Salin" menyalin hasilnya ke papan klip.
Format String Agen Pengguna Berdasarkan Peramban
Setiap peramban mengisi templat yang serupa dengan tokennya sendiri.
Chrome (desktop):
1Mozilla/5.0 (platform) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/major.0.0.0 Safari/537.36
2Chrome (Android):
1Mozilla/5.0 (platform) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/major.0.0.0 Mobile Safari/537.36
2Chrome (iOS):
1Mozilla/5.0 (platform) AppleWebKit/605.1.15 (KHTML, like Gecko) CriOS/major.0.build.build Mobile/15E148 Safari/604.1
2Firefox (desktop):
1Mozilla/5.0 (platform; rv:major.0) Gecko/20100101 Firefox/major.0
2Firefox (Android):
1Mozilla/5.0 (Android version; Mobile; rv:major.0) Gecko/major.0 Firefox/major.0
2Firefox (iOS):
1Mozilla/5.0 (platform) AppleWebKit/605.1.15 (KHTML, like Gecko) FxiOS/major.0 Mobile/15E148 Safari/605.1.15
2Safari (macOS):
1Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/major.minor Safari/605.1.15
2Safari (iOS):
1Mozilla/5.0 (iPhone; CPU iPhone OS major_minor like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/major.minor Mobile/15E148 Safari/604.1
2Edge (desktop):
1Mozilla/5.0 (platform) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/major.0.0.0 Safari/537.36 Edg/major.0.build.build
2Edge (Android):
1Mozilla/5.0 (platform) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/major.0.0.0 Mobile Safari/537.36 EdgA/major.0.build.build
2Edge (iOS):
1Mozilla/5.0 (platform) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/major.minor EdgiOS/major.0.build.build Mobile/15E148 Safari/605.1.15
2Apple mewajibkan setiap peramban iOS menggunakan WebKit, sehingga bentuk iOS di atas menggunakan token mesin Safari AppleWebKit/605.1.15 dan menambahkan penanda khusus peramban: CriOS/ untuk Chrome, FxiOS/ untuk Firefox, EdgiOS/ untuk Edge. Tidak satu pun di antaranya membawa token Chrome/ atau Gecko/. Safari dan Edge di iOS juga mengirim token Version/, yang menyebutkan versi Safari yang disertakan bersama sistem operasi, sehingga selalu sama dengan versi iOS dalam string yang sama.
Sejak 2021, Chrome dan peramban berbasis Chromium seperti Edge membekukan sebagian besar nomor versinya pada desktop dan Android untuk mengurangi jumlah detail pengenal dalam header, suatu perubahan yang disebut Google sebagai "Pengurangan Agen Pengguna". Alih-alih nomor build sebenarnya, token Chrome dalam string ini selalu berbunyi major.0.0.0 (misalnya 128.0.0.0), dan generator ini mengikuti perilaku tersebut. Pengecualiannya adalah token milik Edge — Edg/ pada desktop, EdgA/ pada Android, EdgiOS/ pada iOS — serta Chrome yang berjalan di iOS (CriOS/), yang tetap membawa nomor build lengkap dengan empat bagian karena kebijakan pengurangan Google tidak berlaku bagi keduanya.
Firefox tidak menerapkan pembekuan yang sama. String versi sebenarnya biasanya hanya memiliki dua bagian, major.0, dan itulah yang dihasilkan generator. Versi Firefox tiga bagian seperti 95.0.2 dapat muncul setelah patch keamanan, tetapi alat ini hanya menghasilkan bentuk dua bagian.
Contoh Hasil
Chrome desktop pada Windows:
1Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36
2Firefox desktop pada macOS:
1Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:130.0) Gecko/20100101 Firefox/130.0
2Safari desktop pada macOS:
1Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.4 Safari/605.1.15
2Edge desktop pada Windows:
1Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36 Edg/128.0.2903.86
2Chrome seluler pada Android:
1Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Mobile Safari/537.36
2Edge seluler pada Android:
1Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Mobile Safari/537.36 EdgA/128.0.2952.62
2Safari seluler pada iPhone:
1Mozilla/5.0 (iPhone; CPU iPhone OS 17_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.4 Mobile/15E148 Safari/604.1
2Firefox seluler pada Android:
1Mozilla/5.0 (Android 13; Mobile; rv:130.0) Gecko/130.0 Firefox/130.0
2Chrome seluler pada iPhone:
1Mozilla/5.0 (iPhone; CPU iPhone OS 17_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) CriOS/128.0.6613.98 Mobile/15E148 Safari/604.1
2Firefox seluler pada iPhone:
1Mozilla/5.0 (iPhone; CPU iPhone OS 17_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) FxiOS/130.0 Mobile/15E148 Safari/605.1.15
2Edge seluler pada iPhone:
1Mozilla/5.0 (iPhone; CPU iPhone OS 17_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.4 EdgiOS/128.0.2952.62 Mobile/15E148 Safari/605.1.15
2Perbedaan Desktop dan Seluler
String desktop menyebutkan sistem operasi dan, sering kali, arsitektur prosesor: Win64; x64 untuk Windows 64-bit, atau Intel Mac OS X untuk Mac. String tersebut cukup seragam karena hanya ada beberapa platform desktop yang perlu diwakili.
String seluler biasanya menambahkan kata "Mobile" agar situs mengetahui bahwa tata letak yang ramah sentuhan perlu disajikan. Perangkat iOS mengidentifikasi dirinya sebagai "iPhone" bersama versi iOS, yang ditulis menggunakan garis bawah (17_4) dan tidak menyertakan angka nol patch di bagian akhir, sehingga menjadi 17_4, bukan 17_4_0. Android berbeda: karena kebijakan pengurangan versi yang sama yang memengaruhi nomor build Chrome, Chrome dan Edge di Android selalu melaporkan platform sebagai Linux; Android 10; K, apa pun versi Android atau model ponsel yang sebenarnya digunakan. "K" adalah penanda pengganti, bukan kode perangkat yang sebenarnya, dan versi Android yang sebenarnya disembunyikan. Firefox untuk Android tidak membekukan versi dengan cara yang sama dan justru melaporkan versi utama Android yang sebenarnya, tetapi tidak menyertakan model perangkat sama sekali. Generator yang menampilkan model ponsel tertentu, seperti nomor model Galaxy, di dalam string Chrome Android tidak akan sesuai dengan perilaku Chrome nyata saat ini.
Mengapa String Agen Pengguna Tampak Membingungkan
String tersebut tampak berantakan karena tambalan kompatibilitas selama puluhan tahun. Dalam "perang peramban" pada akhir tahun 1990-an, beberapa situs hanya mengirim halaman yang lebih baik kepada Netscape atau hanya kepada Internet Explorer dengan memeriksa kata kunci di header. Peramban pesaing menanggapi dengan menambahkan kata kunci yang sama ke string mereka agar tidak ditolak. Itulah sebabnya string Chrome masih menyebut "Safari" dan "like Gecko", meskipun tidak menggunakan mesin dengan nama tersebut. Setiap token merupakan sisa mekanisme jabat tangan yang dimaksudkan untuk memenuhi pemeriksaan kompatibilitas lama, bukan gambaran perangkat lunak yang sebenarnya.
Karena masih banyak situs yang mengurai string ini, pembuat peramban tidak dapat begitu saja menghapus kerumitan tersebut tanpa merusak halaman. Pengganti jangka panjangnya, yang disebut Petunjuk Klien Agen Pengguna, mengirimkan detail peramban sebagai header terstruktur yang terpisah, bukan satu string panjang, tetapi header klasik User-Agent masih dikirim di mana-mana demi kompatibilitas mundur.
Kegunaan Umum
- Pengujian kompatibilitas. Periksa tampilan halaman ketika mendeteksi peramban tertentu tanpa memasang peramban tersebut.
- Pemeriksaan desain responsif. Pastikan situs menyajikan tata letak seluler ketika menerima agen pengguna seluler, dan tata letak desktop dalam kondisi lain.
- Rangkaian pengujian otomatis. Masukkan berbagai string agen pengguna ke dalam skrip pengujian untuk memeriksa apakah kode deteksi peramban menanganinya dengan benar.
- Pengujian API dan header. Verifikasi bahwa server berperilaku benar ketika berbagai jenis klien mengirim permintaan.
Keterbatasan
Header agen pengguna hanyalah satu dari banyak sinyal yang dapat dibaca situs. Skrip yang berjalan di halaman dapat memeriksa puluhan detail lain, seperti font yang terpasang, ukuran layar, dan cara kartu grafis merender gambar uji, suatu teknik yang disebut fingerprinting. Menetapkan agen pengguna Chrome saat sebenarnya menjelajah dengan Firefox tidak akan menipu situs yang memeriksa sinyal lain tersebut; ketidakcocokannya mudah dideteksi. Namun, untuk pekerjaan pengembangan dan QA sehari-hari, string yang dibuat dengan format benar sudah cukup untuk menguji respons kode server dan klien situs terhadap berbagai peramban dan perangkat.
Pertanyaan yang sering diajukan
Apa itu string agen pengguna? String tersebut adalah baris teks yang dikirim peramban bersama setiap permintaan web, yang menyebutkan nama peramban, versinya, sistem operasi, dan mesin perenderan. Server menggunakannya untuk menentukan konten atau tata letak yang harus dikembalikan.
Mengapa versi Chrome selalu diakhiri .0.0.0?
Sejak 2021, Chrome membekukan sebagian besar nomor versi yang dilaporkannya dalam header User-Agent untuk mengurangi fingerprinting. Hanya nomor versi utama yang berubah; sisanya tetap .0.0.0. Token milik Edge dan semua peramban di iOS merupakan pengecualian dan tetap menampilkan nomor build lengkap.
Mengapa string iPhone menyebut "Safari" meskipun peramban lain dipilih?
Apple mewajibkan semua peramban iOS menggunakan mesin WebKit miliknya, sehingga Chrome, Firefox, dan Edge di iOS semuanya melaporkan WebKit dan diakhiri token Safari/. Nama perambannya ditunjukkan oleh penanda terpisah: CriOS/ untuk Chrome, FxiOS/ untuk Firefox, dan EdgiOS/ untuk Edge.
Mengapa string Android tidak menampilkan model ponsel saya?
Chrome dan Edge modern di Android melaporkan string platform tetap, Linux; Android 10; K, untuk setiap perangkat dan setiap versi Android yang sebenarnya, sebagai bagian dari kebijakan pengurangan versi yang sama yang memengaruhi nomor build Chrome. Model dan versi Android yang sebenarnya tidak ditampilkan.
Dapatkah saya menggunakan agen pengguna yang dibuat untuk web scraping?
Mengubah header memang dimungkinkan, tetapi situs dapat mendeteksi ketidakcocokan melalui sinyal lain, dan scraping dapat melanggar ketentuan layanan situs atau aturan robots.txt. Periksa kebijakan situs sebelum melakukan scraping.
Apakah string yang dibuat identik dengan string dari perangkat nyata? String tersebut mengikuti format dan urutan token yang sama seperti peramban nyata dari jenis tersebut. Karena pembekuan versi Chrome dan Edge di Android, string Chrome Android yang dibuat dan string nyata dapat identik untuk bagian platform, karena perangkat nyata melaporkan nilai tetap yang sama.
Apa itu Client Hints, dan apakah fitur tersebut menggantikan string agen pengguna?
Client Hints adalah sistem baru yang mengirimkan detail peramban dan perangkat sebagai header HTTP terpisah, bukan satu string gabungan. Peramban mulai mendukungnya, tetapi header klasik User-Agent masih banyak digunakan karena banyak situs yang sudah ada masih bergantung padanya.