Compta les visualitzacions de pàgina, no les persones. Anàlisi web amb privacitat com a prioritat, emmagatzemades de forma segura a la UE.
BETA OBERTA
Compta les visualitzacions de pàgina, no les persones. Anàlisi web amb privacitat com a prioritat, emmagatzemades de forma segura a la UE.

Taula De Cerca De L'Agent D'Usuari De Codi Obert

Conjunt de dades de cerca d'agents d'usuari de codi obert amb comportament previsible. Basat en JSON, revisat per humans i dissenyat per a ús analític pràctic.
Aquesta pàgina s'ha traduït de l'anglès pels nostres interns d'IA, molt motivats, pensant en la vostra comoditat. Encara estan aprenent, així que és possible que s'hagi escapat alguna errada. Per a la informació més precisa, consulteu la versió en anglès.
a casa Projectes de codi obert Taula De Cerca De L'Agent D'Usuari De Codi Obert

Aquest repositori conté un conjunt de dades normalitzades i curades de cadenes d'agents d'usuari, emmagatzemades com a arxius JSON i dissenyades per ser utilitzades com a taula de consultes per derivar dades simples associades a l'agent d'usuari, com el client i el sistema operatiu.

S'utilitza com a component de PageviewsOnline, però es publica aquí per a ús general.

El conjunt de dades és complementat per scripts d'ajuda simples per validar les dades i exportar-les a altres formats o llenguatges de programació (com Java).

Filosofia del projecte

L'objectiu d'aquest projecte no és proporcionar un sistema de detecció de l'agent d'usuari infal·lible o perfectament exacte, sinó una solució pràctica, amb el millor esforç possible, que millori amb el temps a través de l'ús en el món real i de les contribucions de la comunitat.

La detecció de l'agent d'usuari és inherentment imperfecta. En lloc de perseguir una precisió completa, aquest projecte es centra en ser:

  • Pràctic
  • Mantenible
  • Transparente
  • Suficientment bo per a l’anàlisi i classificació del món real

La precisió millora amb el temps a través d'actualitzacions curades, l'ús al món real i les contribucions de la comunitat.

L'anàlisi heurística i les expressions regulars complexes sovint cedeixen la previsibilitat a canvi de guanys marginals d'exactitud.

Aquest projecte afavoreix:

  • Transparència sobre la màgia
  • Dades curades sobre la lògica opaca
  • Resultats explicables per sobre de la detecció especulativa

Característiques

  • Conjunt de dades d'agents d'usuari normalitzades i revisades per humans
  • Comportament de cerca senzill i previsible
  • Format basat en JSON, fàcil d'inspeccionar i amb control de versions
  • Scripts de validació lleugers
  • Exporta helpers per a altres llenguatges (p. ex. Java)
  • Actualment utilitzat en un entorn SaaS de producció

Cadenes normalitzades d'agent d'usuari

El objectiu principal d'aquest projecte és extreure informació d'alt nivell i estable a partir de cadenes d'agent d'usuari de manera ràpida i previsible.

Per donar suport a això, cada cadena de l'agent d'usuari s'normalitza abans de processar-la. La normalització elimina la variació inestable (com ara números de versió i diferències de majúscules i minúscules) mentre es conserva el significat estructural i semàntic de l'agent d'usuari.

Les cadenes de l'agent d'usuari es normalitzen seguint els següents passos:

  • Substitueix tots els dígits numèrics (0-9) pel caràcter marcador x. Això elimina el soroll causat per canvis de versió, mentre es conserva l'estructura i la longitud del token.
  • Converteix tota la cadena a minúscules. Els tokens de l'agent d'usuari són insensibles a les majúscules segons la convenció, i utilitzar minúscules assegura consultes consistents i fiables.

Per exemple, la següent cadena d'agent de l'usuari:

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

Es normalitza a:

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

Aquest enfoc de normalització facilita agrupar, comparar i mantenir els agents d'usuari al llarg del temps, alhora que encara és prou precisa per a la classificació d'alt nivell del client i del sistema operatiu.

En eliminar la variabilitat específica de la versió i la relacionada amb el cas (majúscules/minúscules), el procés de cerca serà més previsible i més robust davant els canvis futurs de l'agent d'usuari.

Format de dades

Cada entrada normalitzada de l'agent d'usuari inclou:

  • id - La cadena normalitzada de l'agent d'usuari
  • client_family - Classificació de clients a nivell superior (per exemple, navegador, bot, aplicació)
  • os_family - Classificació de sistemes operatius d'alt nivell

Els camps exactes poden evolucionar amb el temps a mesura que el conjunt de dades creix.

Comportament de cerca

La coincidència de l'agent d'usuari s'executa sobre cadenes normalitzades.

Les coincidències exactes són preferides; la coincidència parcial o heurística s'evita intencionadament per mantenir un comportament previsible i depurable.

Contribuint

Les aportacions són molt benvingudes i ajuden a millorar la qualitat i la precisió globals d'aquest projecte.

La manera més eficaç de contribuir és afegir o actualitzar entrades normalitzades d'agents d'usuari al fitxer user_agents.json, juntament amb dades de classificació rellevants.

Un cop els vostres canvis estiguin llestos, si us plau, envieu una pull request que contingui les dades i/o les actualitzacions de codi necessàries.

Fins i tot la informació parcial o incompleta és útil i apreciada — cada aportació ajuda a millorar la cobertura i la fiabilitat a llarg termini.

Començar (Guia ràpida)

El nucli d'aquest projecte és el conjunt de fitxers de dades JSON, situats al directori data/.

Per ajudar a mantenir i reutilitzar aquestes dades, el repositori inclou un petit conjunt de scripts senzills de Node.js que realitzen validacions bàsiques i tasques d'exportació.

Comandes comunes disponibles:

  • npm run test - Valida les dades JSON i verifica possibles errors d'estructura o de consistència.
  • npm run build - Crea, ordena i exporta les dades normalitzades a altres formats de llenguatges de programació (com Java) per a una integració més fàcil.

Aquestes eines són intencionadament mínimes, centrant-se en la correcció de dades i en la portabilitat més que en el processament complex.

Les cadenes d'User-Agent no són fiables

Derivar informació precisa a partir de cadenes d'agent d'usuari és inherentment poc fiable per diverses raons:

  • No hi ha cap estàndard formal ni cap especificació que reguli l’estructura o el contingut de les cadenes d’agent d’usuari.
  • Molts agents d'usuari intencionadament suplanten o imiten altres agents d'usuari per raons de compatibilitat i de versions antigues

Per això, és extremadament difícil determinar les dades de l'agent d'usuari de manera completament precisa i coherent.

Aquesta biblioteca, per tant, s'ha de veure com una solució de millor esforç, i no com una font de veritat garantida ni de gran autoritat.

Amb l'ús continuat i les contribucions de la comunitat, la precisió pot millorar amb el temps.

Gestió de versions i estabilitat

El conjunt de dades pot canviar amb el temps a mesura que evolucionin els agents d'usuari.

Les classificacions no es consideren canvis que trenquen la compatibilitat, fins i tot entre versions menors.

Els consumidors haurien de considerar els resultats com a suggeriments de millor esforç, i no com a garanties contractuals.

Llicència

Aquest projecte i les seves dades estan publicades sota la llicència Apache 2.0 (Apache-2.0).

L'ús comercial, la modificació i la redistribució estan permesos.

Les aportacions són benvingudes i apreciades.

Marca

PageviewsOnline, Two-Dot-Oh, i qualsevol logotip associat, noms de serveis o imatge de marca són marques comercials de Two-Dot-Oh.

Aquest projecte és de codi obert; no obstant això, l'ús del nom PageviewsOnline o de qualsevol marca associada en relació amb un producte, servei o oferta no està permès sense el consentiment previ per escrit.

Les bifurcacions i les obres derivades han de fer servir un nom i una identitat de marca diferents i no han de donar a entendre cap aprovació per part de PageviewsOnline ni afiliació amb PageviewsOnline o Two-Dot-Oh.