Μετάβαση στο περιεχόμενο

Γεννήτρια Τυχαίων User Agent - Δημιουργία Συμβολοσειρών Προγράμματος Περιήγησης

Δημιουργήστε αυθεντικές συμβολοσειρές user agent για Chrome, Firefox, Safari και Edge. Ελέγξτε τη συμβατότητα προγραμμάτων περιήγησης, τα responsive σχέδια και τα API με ρεαλιστικούς αναγνωριστικούς προγράμματος περιήγησης.

Γεννήτρια Τυχαίων User Agent

Δημιουργία τυχαίων, ρεαλιστικών συμβολοσειρών user agent προγράμματος περιήγησης για δοκιμές ανάπτυξης ιστού.

Παραγόμενος User Agent

Υπολογιστής φόρτωσης...
📚

Τεκμηρίωση

Γεννήτρια τυχαίου User Agent

Μια γεννήτρια τυχαίων user agent δημιουργεί δείγματα από συμβολοσειρές user agent, τις σύντομες γραμμές κειμένου που στέλνει ένα πρόγραμμα περιήγησης σε έναν ιστότοπο για να αναγνωρίσει τον εαυτό του. Αυτό το εργαλείο δημιουργεί συμβολοσειρές που ακολουθούν την πραγματική μορφή των Chrome, Firefox, Safari και Edge, τόσο για επιτραπέζιες όσο και για κινητές συσκευές, ώστε οι προγραμματιστές να μπορούν να ελέγχουν πώς ανταποκρίνεται ένας ιστότοπος σε διαφορετικά προγράμματα περιήγησης χωρίς να εγκαθιστούν το καθένα.

Τι είναι μια συμβολοσειρά User Agent;

Κάθε φορά που ένα πρόγραμμα περιήγησης ζητά μια ιστοσελίδα, στέλνει μια κεφαλίδα HTTP User-Agent. Η κεφαλίδα είναι μία γραμμή κειμένου που περιγράφει το όνομα και την έκδοση του προγράμματος περιήγησης, το λειτουργικό σύστημα και τη μηχανή απόδοσης (το μέρος του προγράμματος περιήγησης που σχεδιάζει τη σελίδα). Ένας ιστότοπος μπορεί να διαβάσει αυτή την κεφαλίδα για να αποφασίσει ποια διάταξη σελίδας ή ποιες δυνατότητες θα στείλει ως απάντηση.

Μια τυπική συμβολοσειρά user agent έχει την εξής μορφή:

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

Σχεδόν κάθε πρόγραμμα περιήγησης ξεκινά τη συμβολοσειρά του με «Mozilla/5.0». Αυτό είναι κατάλοιπο της δεκαετίας του 1990, όταν οι ιστότοποι έλεγχαν αυτή τη λέξη για να αποφασίσουν αν ένα πρόγραμμα περιήγησης ήταν αρκετά ικανό να εμφανίσει μια σελίδα. Τα νεότερα προγράμματα περιήγησης διατήρησαν το token, ώστε να μην αποκλείονται από παλιούς ελέγχους.

Πώς λειτουργεί αυτή η γεννήτρια

Το εργαλείο διαθέτει τρία στοιχεία ελέγχου:

  1. Τύπος συσκευής – Επιτραπέζια ή κινητή.
  2. Οικογένεια προγράμματος περιήγησης – Chrome, Firefox, Safari ή Edge.
  3. Λειτουργικό σύστημα – Windows, macOS ή Linux για επιτραπέζιες συσκευές· iOS ή Android για κινητές.

Δεν υπάρχει κάθε συνδυασμός στον πραγματικό κόσμο, επομένως το εργαλείο περιορίζει τις επιλογές. Το Safari εμφανίζεται μόνο σε macOS και iOS, επειδή η Apple δεν παρέχει το Safari για Windows, Linux ή Android. Τα Chrome, Firefox και Edge είναι διαθέσιμα σε κάθε αναφερόμενο λειτουργικό σύστημα, συμπεριλαμβανομένου του iOS, όπου λειτουργούν ως περίβλημα πάνω από τη μηχανή WebKit της Apple και όχι με τη δική τους μηχανή.

Με το πάτημα της επιλογής «Δημιουργία νέου» δημιουργείται μια συμβολοσειρά από αυτές τις τρεις ρυθμίσεις και έναν αριθμό έκδοσης που επιλέγεται τυχαία. Το κουμπί «Αντιγραφή» αντιγράφει το αποτέλεσμα στο πρόχειρο.

Μορφή συμβολοσειράς User Agent ανά πρόγραμμα περιήγησης

Κάθε πρόγραμμα περιήγησης συμπληρώνει ένα παρόμοιο πρότυπο με τα δικά του token.

Chrome (επιτραπέζιο):

1Mozilla/5.0 (platform) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/major.0.0.0 Safari/537.36
2

Chrome (Android):

1Mozilla/5.0 (platform) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/major.0.0.0 Mobile Safari/537.36
2

Chrome (iOS):

1Mozilla/5.0 (platform) AppleWebKit/605.1.15 (KHTML, like Gecko) CriOS/major.0.build.build Mobile/15E148 Safari/604.1
2

Firefox (επιτραπέζιο):

1Mozilla/5.0 (platform; rv:major.0) Gecko/20100101 Firefox/major.0
2

Firefox (Android):

1Mozilla/5.0 (Android version; Mobile; rv:major.0) Gecko/major.0 Firefox/major.0
2

Firefox (iOS):

1Mozilla/5.0 (platform) AppleWebKit/605.1.15 (KHTML, like Gecko) FxiOS/major.0 Mobile/15E148 Safari/605.1.15
2

Safari (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
2

Safari (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
2

Edge (επιτραπέζιο):

1Mozilla/5.0 (platform) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/major.0.0.0 Safari/537.36 Edg/major.0.build.build
2

Edge (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
2

Edge (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
2

Η Apple απαιτεί από κάθε πρόγραμμα περιήγησης στο iOS να χρησιμοποιεί το WebKit, επομένως οι παραπάνω μορφές iOS μοιράζονται το token της μηχανής AppleWebKit/605.1.15 του Safari και προσθέτουν έναν ειδικό δείκτη προγράμματος περιήγησης: CriOS/ για το Chrome, FxiOS/ για το Firefox και EdgiOS/ για το Edge. Κανένα από αυτά δεν περιέχει token Chrome/ ή Gecko/. Το Safari και το Edge στο iOS στέλνουν επίσης ένα token Version/, το οποίο δηλώνει την έκδοση του Safari που διατέθηκε μαζί με το λειτουργικό σύστημα, οπότε ταιριάζει πάντα με την έκδοση iOS στην ίδια συμβολοσειρά.

Από το 2021, τα προγράμματα περιήγησης Chrome και Chromium, όπως το Edge, έχουν παγώσει το μεγαλύτερο μέρος του αριθμού έκδοσής τους σε επιτραπέζιες συσκευές και Android, ώστε να μειώσουν τον όγκο των αναγνωριστικών λεπτομερειών στην κεφαλίδα, σε μια αλλαγή που η Google ονομάζει «Μείωση User-Agent». Αντί για πραγματικό αριθμό build, το token Chrome σε αυτές τις συμβολοσειρές έχει πάντα τη μορφή major.0.0.0 (για παράδειγμα 128.0.0.0) και αυτή η γεννήτρια ακολουθεί την ίδια συμπεριφορά. Εξαίρεση αποτελούν το token του ίδιου του Edge — Edg/ σε επιτραπέζιες συσκευές, EdgA/ στο Android και EdgiOS/ στο iOS — καθώς και το Chrome στο iOS (CriOS/), τα οποία εξακολουθούν να περιέχουν πλήρη αριθμό build τεσσάρων μερών, επειδή η πολιτική μείωσης της Google δεν εφαρμόζεται σε αυτά.

Ο Firefox δεν έχει υιοθετήσει το ίδιο πάγωμα. Η πραγματική συμβολοσειρά έκδοσής του αποτελεί συνήθωςται από δύο μέρη, major.0, και αυτή είναι η μορφή που δημιουργεί η γεννήτρια. Μια έκδοση Firefox τριών μερών, όπως η 95.0.2, μπορεί να εμφανιστεί μετά από ενημέρωση ασφαλείας, αλλά αυτό το εργαλείο δημιουργεί μόνο τη μορφή των δύο μερών.

Παραδείγματα αποτελεσμάτων

Chrome για επιτραπέζιους υπολογιστές σε Windows:

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

Firefox για επιτραπέζιους υπολογιστές σε macOS:

1Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:130.0) Gecko/20100101 Firefox/130.0
2

Safari για επιτραπέζιους υπολογιστές σε 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
2

Edge για επιτραπέζιους υπολογιστές σε 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
2

Chrome για κινητά σε Android:

1Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Mobile Safari/537.36
2

Edge για κινητά σε 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
2

Safari για κινητά σε 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
2

Firefox για κινητά σε Android:

1Mozilla/5.0 (Android 13; Mobile; rv:130.0) Gecko/130.0 Firefox/130.0
2

Chrome για κινητά σε 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
2

Firefox για κινητά σε 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
2

Edge για κινητά σε 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
2

Διαφορές επιτραπέζιων και κινητών συσκευών

Οι συμβολοσειρές για επιτραπέζιες συσκευές αναφέρουν το λειτουργικό σύστημα και συχνά την αρχιτεκτονική του επεξεργαστή: Win64; x64 για Windows 64 bit ή Intel Mac OS X για Mac. Παραμένουν σχετικά ομοιόμορφες, επειδή υπάρχουν μόνο λίγες επιτραπέζιες πλατφόρμες που πρέπει να εκπροσωπηθούν.

Οι συμβολοσειρές για κινητές συσκευές συνήθως προσθέτουν τη λέξη «Mobile», ώστε ένας ιστότοπος να γνωρίζει ότι πρέπει να προσφέρει διάταξη φιλική στην αφή. Οι συσκευές iOS αναγνωρίζονται ως «iPhone» μαζί με την έκδοση iOS, η οποία γράφεται με κάτω παύλες (17_4) και χωρίς το τελικό μηδενικό της ενημέρωσης κώδικα, δηλαδή 17_4 αντί για 17_4_0. Το Android διαφέρει: λόγω της ίδιας πολιτικής μείωσης εκδόσεων που επηρεάζει τον αριθμό build του Chrome, το Chrome και το Edge στο Android αναφέρουν πάντα την πλατφόρμα ως Linux; Android 10; K, ανεξάρτητα από την έκδοση Android ή το μοντέλο τηλεφώνου που χρησιμοποιείται. Το «K» είναι σύμβολο κράτησης και όχι πραγματικός κωδικός συσκευής, ενώ η πραγματική έκδοση Android αποκρύπτεται. Ο Firefox για Android δεν παγώνει την έκδοση με τον ίδιο τρόπο και αναφέρει την πραγματική κύρια έκδοση του Android, αλλά δεν περιλαμβάνει καθόλου το μοντέλο της συσκευής. Μια γεννήτρια που εμφανίζει συγκεκριμένο μοντέλο τηλεφώνου, όπως έναν αριθμό μοντέλου Galaxy, μέσα σε μια συμβολοσειρά Chrome για Android δεν θα ταίριαζε με τον τρόπο λειτουργίας του πραγματικού, σύγχρονου Chrome.

Γιατί οι συμβολοσειρές User Agent φαίνονται συγκεχυμένες

Η συμβολοσειρά φαίνεται φορτωμένη λόγω δεκαετιών διορθώσεων συμβατότητας. Στους «πολέμους των προγραμμάτων περιήγησης» στα τέλη της δεκαετίας του 1990, ορισμένοι ιστότοποι έστελναν καλύτερες σελίδες μόνο στο Netscape ή μόνο στον Internet Explorer, ελέγχοντας λέξεις-κλειδιά στην κεφαλίδα. Τα ανταγωνιστικά προγράμματα περιήγησης απάντησαν προσθέτοντας τις ίδιες λέξεις-κλειδιά στις δικές τους συμβολοσειρές, ώστε να μην απορρίπτονται. Γι’ αυτό η συμβολοσειρά του Chrome εξακολουθεί να αναφέρει τα «Safari» και «like Gecko», παρόλο που δεν χρησιμοποιεί καμία μηχανή με αυτό το όνομα. Κάθε token είναι κατάλοιπο μιας παλιάς διαδικασίας χειραψίας, που προοριζόταν να ικανοποιεί έναν παλιό έλεγχο συμβατότητας και όχι να περιγράφει με ακρίβεια το λογισμικό.

Επειδή τόσοι ιστότοποι εξακολουθούν να αναλύουν αυτές τις συμβολοσειρές, οι κατασκευαστές προγραμμάτων περιήγησης δεν μπορούν απλώς να αφαιρέσουν τα περιττά στοιχεία χωρίς να προκαλέσουν προβλήματα στις σελίδες. Η μακροπρόθεσμη αντικατάσταση, που ονομάζεται Υποδείξεις πελάτη User-Agent, στέλνει τις λεπτομέρειες του προγράμματος περιήγησης ως ξεχωριστές, δομημένες κεφαλίδες αντί για μία μεγάλη συμβολοσειρά, αλλά η κλασική κεφαλίδα User-Agent εξακολουθεί να αποστέλλεται παντού για συμβατότητα με παλαιότερα συστήματα.

Συνήθεις χρήσεις

  • Έλεγχος συμβατότητας. Ελέγξτε πώς αποδίδεται μια σελίδα όταν εντοπίζει συγκεκριμένο πρόγραμμα περιήγησης, χωρίς να εγκαταστήσετε το συγκεκριμένο πρόγραμμα.
  • Έλεγχοι αποκριτικού σχεδιασμού. Επιβεβαιώστε ότι ένας ιστότοπος προσφέρει διάταξη για κινητά όταν λαμβάνει user agent κινητής συσκευής και διάταξη για επιτραπέζιους υπολογιστές σε διαφορετική περίπτωση.
  • Αυτοματοποιημένες σειρές δοκιμών. Τροφοδοτήστε τα σενάρια δοκιμών με μια σειρά από συμβολοσειρές user agent, για να ελέγξετε ότι ο κώδικας εντοπισμού προγράμματος περιήγησης χειρίζεται σωστά καθεμία.
  • Έλεγχος API και κεφαλίδων. Επαληθεύστε ότι ένας διακομιστής συμπεριφέρεται σωστά όταν διαφορετικοί τύποι πελατών στέλνουν αιτήματα.

Περιορισμοί

Η κεφαλίδα user agent είναι μόνο ένα από τα πολλά σήματα που μπορεί να διαβάσει ένας ιστότοπος. Τα σενάρια που εκτελούνται στη σελίδα μπορούν να ελέγξουν δεκάδες άλλα στοιχεία, όπως τις εγκατεστημένες γραμματοσειρές, το μέγεθος της οθόνης και τον τρόπο με τον οποίο η κάρτα γραφικών αποδίδει μια δοκιμαστική εικόνα, μια τεχνική που ονομάζεται fingerprinting. Η ρύθμιση ενός user agent Chrome ενώ η περιήγηση γίνεται στην πραγματικότητα με Firefox δεν θα ξεγελάσει έναν ιστότοπο που ελέγχει αυτά τα άλλα σήματα· η ασυμφωνία εντοπίζεται εύκολα. Για τη συνήθη ανάπτυξη και τον ποιοτικό έλεγχο, όμως, μια σωστά μορφοποιημένη δημιουργημένη συμβολοσειρά αρκεί για να ελεγχθεί η αντίδραση του κώδικα διακομιστή και πελάτη ενός ιστότοπου σε διαφορετικά προγράμματα περιήγησης και συσκευές.

Συχνές ερωτήσεις

Τι είναι μια συμβολοσειρά user agent; Είναι μια γραμμή κειμένου που στέλνει ένα πρόγραμμα περιήγησης με κάθε αίτημα στον ιστό, αναφέροντας το πρόγραμμα περιήγησης, την έκδοσή του, το λειτουργικό σύστημα και τη μηχανή απόδοσης. Οι διακομιστές τη χρησιμοποιούν για να αποφασίσουν ποιο περιεχόμενο ή ποια διάταξη θα επιστρέψουν.

Γιατί η έκδοση του Chrome τελειώνει πάντα σε .0.0.0; Από το 2021, το Chrome έχει παγώσει το μεγαλύτερο μέρος του αριθμού έκδοσης που αναφέρει στην κεφαλίδα User-Agent, ώστε να μειώσει το fingerprinting. Μόνο ο κύριος αριθμός έκδοσης αλλάζει· το υπόλοιπο παραμένει σταθερό ως .0.0.0. Το ειδικό token του Edge και κάθε πρόγραμμα περιήγησης στο iOS αποτελούν εξαιρέσεις και εξακολουθούν να εμφανίζουν πλήρη αριθμό build.

Γιατί μια συμβολοσειρά iPhone αναφέρει «Safari» ακόμη και όταν έχει επιλεγεί διαφορετικό πρόγραμμα περιήγησης; Η Apple απαιτεί από όλα τα προγράμματα περιήγησης στο iOS να χρησιμοποιούν τη μηχανή WebKit, επομένως τα Chrome, Firefox και Edge στο iOS αναφέρουν όλα το WebKit και τελειώνουν με ένα token Safari/. Το πρόγραμμα περιήγησης δηλώνεται από ξεχωριστό δείκτη: CriOS/ για το Chrome, FxiOS/ για το Firefox και EdgiOS/ για το Edge.

Γιατί η συμβολοσειρά Android δεν εμφανίζει το μοντέλο του τηλεφώνου μου; Τα σύγχρονα Chrome και Edge στο Android αναφέρουν μια σταθερή συμβολοσειρά πλατφόρμας, Linux; Android 10; K, για κάθε συσκευή και κάθε πραγματική έκδοση Android, στο πλαίσιο της ίδιας πολιτικής μείωσης εκδόσεων που επηρεάζει τον αριθμό build του Chrome. Το πραγματικό μοντέλο και η έκδοση Android δεν εκτίθενται.

Μπορώ να χρησιμοποιήσω έναν δημιουργημένο user agent για απόξεση δεδομένων από τον ιστό; Η αλλαγή της κεφαλίδας είναι δυνατή, αλλά οι ιστότοποι μπορούν να εντοπίσουν την ασυμφωνία μέσω άλλων σημάτων, ενώ η απόξεση δεδομένων μπορεί να παραβιάζει τους όρους χρήσης ενός ιστότοπου ή τους κανόνες του robots.txt. Ελέγξτε τις πολιτικές ενός ιστότοπου πριν από την απόξεση δεδομένων.

Είναι μια δημιουργημένη συμβολοσειρά πανομοιότυπη με μια συμβολοσειρά από πραγματική συσκευή; Ακολουθεί την ίδια μορφή και σειρά token με ένα πραγματικό πρόγραμμα περιήγησης αυτού του τύπου. Λόγω του παγώματος της έκδοσης των Chrome και Edge στο Android, μια δημιουργημένη συμβολοσειρά Chrome για Android και μια πραγματική μπορεί να είναι πανομοιότυπες στο τμήμα της πλατφόρμας, καθώς οι πραγματικές συσκευές αναφέρουν την ίδια σταθερή τιμή.

Τι είναι οι Υποδείξεις πελάτη και αντικαθιστούν τη συμβολοσειρά user agent; Οι Υποδείξεις πελάτη είναι ένα νεότερο σύστημα που στέλνει λεπτομέρειες για το πρόγραμμα περιήγησης και τη συσκευή ως ξεχωριστές κεφαλίδες HTTP αντί για μία ενιαία συμβολοσειρά. Τα προγράμματα περιήγησης προσθέτουν υποστήριξη για αυτό, αλλά η κλασική κεφαλίδα User-Agent παραμένει ευρέως χρησιμοποιούμενη, επειδή πολλοί υπάρχοντες ιστότοποι εξακολουθούν να εξαρτώνται από αυτήν.