Неадекватный отпечаток



  • подскажите, а как формируется разрешение экрана в отпечатке?

    я собрал несколько тысяч комбинаций параметров width и height и очень мало повторяются, такое впечатление, что разрешение задается рандомно.

    1920х911, 1366х614, 802х578

    разве бывают такие разрешения экрана ПК?

    Либо я путаю и получается, что параметры width и height в JSON отпечатка - это размер окна браузера, а разрешение экрана внутри payload, верно? В таком случае вытащить разрешения экрана из payload можно только с помощью regex либо использовать блок с JavaScript в проекте?



  • alt text
    пробую вот так, но все равно получаю разрешение из параметра width и height :(

    хотя тот же window.screen.height если вызывается на станице, показывает верное разрешение экрана.

    возможно есть какое-то иное решение, как в проекте получить эти параметры?

    UPD:
    если вызвать вышеуказанный блок с window.screen.height после блока загрузки страницы то значение верное. Пока нашел только такое решение.



  • @Sevenup это парметры видимой области. Например, у меня екран 1024*768, но у меня вверху в браузере 3 панели каких то яндексов спутников, + снизу панел. Задач двойная, поэтому и видимая область меньше



  • @DrPrime said in Неадекватный отпечаток:

    @Sevenup это парметры видимой области. Например, у меня екран 1024*768, но у меня вверху в браузере 3 панели каких то яндексов спутников, + снизу панел. Задач двойная, поэтому и видимая область меньше

    да, я уже это понял :) вопрос был в том, как получать из отпечатка именно разрешение экрана.
    Через JS пока только нашел способ.
    В общем сервис отпечатков работает отлично ОС распределяет вроде как в соответствии действительности:
    alt text

    по разрешениям экрана тоже все красиво:
    alt text

    авторам респект, хороший инструмент придумали. надо брать :)

    P.S.
    очень жду возможности управления или фильтра плагинов.



  • гайз, а почему всегда язык US?
    alt text
    сколько не генерю отпечатков, всегда US, а RU хоть бывает? :) может это глюк какой?



  • пока спасаюсь "сеть"->"установить заголовок"->"acept language"="ru-ru,ru;q=0.8"
    но почему по умолчанию заголовок us мне не ясно. Баг, не?



  • @Sevenup said in Неадекватный отпечаток:

    "acept language"="ru-ru,ru;q=0.8"

    Нужно вписывать что бы сработало так? "acept language"="ru-ru,ru;q=0.8"
    или так acept language=ru-ru,ru;q=0.8
    И что значит 0.8?



  • @35xakers, там же поля: верхнее - Accept-Language, нижнее - собственно языки.

    Q - это относительный фактор качества, своего рода приоритет использования языков. Если их несколько, то с помощью чисел от 0 до 1 можно задавать более и менее приоритетные.



  • @35xakers said in Неадекватный отпечаток:

    @Sevenup said in Неадекватный отпечаток:

    "acept language"="ru-ru,ru;q=0.8"

    Нужно вписывать что бы сработало так? "acept language"="ru-ru,ru;q=0.8"
    или так acept language=ru-ru,ru;q=0.8
    И что значит 0.8?

    "сеть" -> "установить заголовок"
    вот так:
    alt text
    ну языки уж каждому по необходимости. Если в ру сегменте работаете то "ru-ru,ru;q=0.8"



  • Благодарю)



  • alt text
    Высота экрана 19750
    Бас очень сильно залагал с этим отпечатком, пришлось приложить усилий что бы посмотреть на отпечаток в переменной))

     {"valid":true,"payload":"(function(){var refs={};;var aliases={};aliases[\"window.navigator.language\"] = eval(\"window.navigator.language\");aliases[\"window.navigator\"] = eval(\"window.navigator\");aliases[\"window.navigator.userAgent\"] = eval(\"window.navigator.userAgent\");aliases[\"window.navigator.javaEnabled\"] = eval(\"window.navigator.javaEnabled\");;;(function(){var resp = null;delete window.screen;Object.defineProperty(window, \"screen\", {configurable: true, enumerable:false, get: function() {if(resp)return resp;resp = (function(){var res = {};var prot = {};if(res)Object.defineProperty(res,'toString', {configurable: true,enumerable: false, get: function() { return function(){return \"[object Screen]\"}}});if(res)Object.defineProperty(res,'valueOf', {configurable: true,enumerable: false, get: function() { return function(){return \"[object Screen]\"}}});Object.defineProperty(res,\"availTop\", {configurable: true,enumerable:true, get: function() { return 0}});Object.defineProperty(res,\"width\", {configurable: true,enumerable:true, get: function() { return 1024}});Object.defineProperty(res,\"availHeight\", {configurable: true,enumerable:true, get: function() { return 768}});Object.defineProperty(res,\"height\", {configurable: true,enumerable:true, get: function() { return 768}});Object.defineProperty(res,\"availWidth\", {configurable: true,enumerable:true, get: function() { return 1024}});Object.defineProperty(res,\"colorDepth\", {configurable: true,enumerable:true, get: function() { return 32}});Object.defineProperty(res,\"availLeft\", {configurable: true,enumerable:true, get: function() { return 0}});Object.defineProperty(res,\"pixelDepth\", {configurable: true,enumerable:true, get: function() { return 32}});Object.setPrototypeOf(res, prot);return res;})();;return resp;}})})();;(function(){var resp = null;delete window.navigator;Object.defineProperty(window, \"navigator\", {configurable: true, enumerable:false, get: function() {if(resp)return resp;resp = (function(){var res = {};var prot = {};if(res)Object.defineProperty(res,'toString', {configurable: true,enumerable: false, get: function() { return function(){return \"[object Navigator]\"}}});if(res)Object.defineProperty(res,'valueOf', {configurable: true,enumerable: false, get: function() { return function(){return \"[object Navigator]\"}}});Object.defineProperty(res,\"cookieEnabled\", {configurable: true,enumerable:true, get: function() { return true}});Object.defineProperty(res,\"language\", {configurable: true,enumerable:true, get: function() { return aliases[\"window.navigator.language\"]}});Object.defineProperty(res,\"productSub\", {configurable: true,enumerable:true, get: function() { return \"20030107\"}});Object.defineProperty(res,\"product\", {configurable: true,enumerable:true, get: function() { return \"Gecko\"}});Object.defineProperty(res,\"appCodeName\", {configurable: true,enumerable:true, get: function() { return \"Mozilla\"}});Object.defineProperty(res,\"vendorSub\", {configurable: true,enumerable:true, get: function() { return \"\"}});Object.defineProperty(res,\"vendor\", {configurable: true,enumerable:true, get: function() { return \"Apple Computer, Inc.\"}});Object.defineProperty(res,\"platform\", {configurable: true,enumerable:true, get: function() { return \"Linux x86_64\"}});Object.defineProperty(res,\"appName\", {configurable: true,enumerable:true, get: function() { return \"Netscape\"}});Object.defineProperty(res,\"appVersion\", {configurable: true,enumerable:true, get: function() { return \"5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36\"}});Object.defineProperty(res,\"userAgent\", {configurable: true,enumerable:true, get: function() { return aliases[\"window.navigator.userAgent\"]}});Object.defineProperty(res,\"onLine\", {configurable: true,enumerable:true, get: function() { return true}});prot[\"javaEnabled\"] = (function(){var res = function(){if(aliases[\"window.navigator.javaEnabled\"]){return aliases[\"window.navigator.javaEnabled\"].apply(aliases[\"window.navigator\"], arguments)}}; res.toString = function(){return \"function javaEnabled() {\\n [native code]\\n}\"}; res.valueOf = function(){return \"function javaEnabled() {\\n [native code]\\n}\"}; return res;})();prot[\"getStorageUpdates\"] = (function(){var res = function(){}; res.toString = function(){return \"function getStorageUpdates() {\\n [native code]\\n}\"}; res.valueOf = function(){return \"function getStorageUpdates() {\\n [native code]\\n}\"}; return res;})();prot[\"webkitGetGamepads\"] = (function(){var res = function(){}; res.toString = function(){return \"function webkitGetGamepads() {\\n [native code]\\n}\"}; res.valueOf = function(){return \"function webkitGetGamepads() {\\n [native code]\\n}\"}; return res;})();Object.setPrototypeOf(res, prot);return res;})();;return resp;}})})();;(function(){var resp = null;delete window.navigator.plugins;Object.defineProperty(window.navigator, \"plugins\", {configurable: true, enumerable:false, get: function() {if(resp)return resp;resp = (function(){var res = {};var prot = {};if(res)Object.defineProperty(res,'toString', {configurable: true,enumerable: false, get: function() { return function(){return \"[object PluginArray]\"}}});if(res)Object.defineProperty(res,'valueOf', {configurable: true,enumerable: false, get: function() { return function(){return \"[object PluginArray]\"}}});prot[\"length\"] = 0;prot[\"refresh\"] = (function(){var res = function(){}; res.toString = function(){return \"function refresh() {\\n [native code]\\n}\"}; res.valueOf = function(){return \"function refresh() {\\n [native code]\\n}\"}; return res;})();prot[\"namedItem\"] = (function(){var res = function(item){var length=window.navigator.plugins.length;for(var i=0;i<length;i++){var p = window.navigator.plugins[i];if(p.name == item)return p}}; res.toString = function(){return \"function namedItem() {\\n [native code]\\n}\"}; res.valueOf = function(){return \"function namedItem() {\\n [native code]\\n}\"}; return res;})();prot[\"item\"] = (function(){var res = function(item){return window.navigator.plugins[item]}; res.toString = function(){return \"function item() {\\n [native code]\\n}\"}; res.valueOf = function(){return \"function item() {\\n [native code]\\n}\"}; return res;})();Object.setPrototypeOf(res, prot);return res;})();;return resp;}})})();;(function(){var resp = null;delete window.navigator.mimeTypes;Object.defineProperty(window.navigator, \"mimeTypes\", {configurable: true, enumerable:false, get: function() {if(resp)return resp;resp = (function(){var res = {};var prot = {};if(res)Object.defineProperty(res,'toString', {configurable: true,enumerable: false, get: function() { return function(){return \"[object MimeTypeArray]\"}}});if(res)Object.defineProperty(res,'valueOf', {configurable: true,enumerable: false, get: function() { return function(){return \"[object MimeTypeArray]\"}}});prot[\"length\"] = 0;prot[\"item\"] = (function(){var res = function(item){return window.navigator.mimeTypes[item]}; res.toString = function(){return \"function item() {\\n [native code]\\n}\"}; res.valueOf = function(){return \"function item() {\\n [native code]\\n}\"}; return res;})();prot[\"namedItem\"] = (function(){var res = function(item){var length=window.navigator.mimeTypes.length;for(var i=0;i<length;i++){var p = window.navigator.mimeTypes[i];if(p.type == item)return p}}; res.toString = function(){return \"function namedItem() {\\n [native code]\\n}\"}; res.valueOf = function(){return \"function namedItem() {\\n [native code]\\n}\"}; return res;})();Object.setPrototypeOf(res, prot);return res;})();;return resp;}})})();;(function(){var resp = null;delete window.navigator.hardwareConcurrency;Object.defineProperty(window.navigator, \"hardwareConcurrency\", {configurable: true, enumerable:false, get: function() {if(resp)return resp;resp = 2;return resp;}})})();})();try{window[\"unescape\"].toString = function(){return \"function unescape() {\\n [native code]\\n}\"}; window[\"unescape\"].valueOf = function(){return \"function unescape() {\\n [native code]\\n}\"};}catch(e){}try{window[\"eval\"].toString = function(){return \"function eval() {\\n [native code]\\n}\"}; window[\"eval\"].valueOf = function(){return \"function eval() {\\n [native code]\\n}\"};}catch(e){}try{window[\"escape\"].toString = function(){return \"function escape() {\\n [native code]\\n}\"}; window[\"escape\"].valueOf = function(){return \"function escape() {\\n [native code]\\n}\"};}catch(e){}try{window[\"decodeURIComponent\"].toString = function(){return \"function decodeURIComponent() {\\n [native code]\\n}\"}; window[\"decodeURIComponent\"].valueOf = function(){return \"function decodeURIComponent() {\\n [native code]\\n}\"};}catch(e){}try{window[\"parseFloat\"].toString = function(){return \"function parseFloat() {\\n [native code]\\n}\"}; window[\"parseFloat\"].valueOf = function(){return \"function parseFloat() {\\n [native code]\\n}\"};}catch(e){}try{delete window[\"webkitSpeechRecognitionEvent\"];}catch(e){}try{delete window[\"webkitSpeechRecognitionError\"];}catch(e){}try{delete window[\"webkitSpeechRecognition\"];}catch(e){}try{delete window[\"webkitSpeechGrammarList\"];}catch(e){}try{delete window[\"webkitSpeechGrammar\"];}catch(e){}try{delete window[\"webkitOfflineAudioContext\"];}catch(e){}try{delete window[\"webkitAudioContext\"];}catch(e){}try{delete window[\"webkitStorageInfo\"];}catch(e){}try{delete window[\"webkitRTCPeerConnection\"];}catch(e){}try{delete window[\"webkitMediaStream\"];}catch(e){}try{delete window[\"webkitRequestAnimationFrame\"];}catch(e){}try{delete window[\"webkitCancelAnimationFrame\"];}catch(e){}try{delete window[\"webkitCancelRequestAnimationFrame\"];}catch(e){}try{delete window[\"webkitRequestFileSystem\"];}catch(e){}try{delete window[\"webkitResolveLocalFileSystemURL\"];}catch(e){}","ua":"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36","dnt":false,"width":1920,"height":19750,"fonts":["MONO"],"headers":["Host","X-Real-Ip","X-Forwarded-For","Connection","Content-Length","Accept-Encoding","Cf-Ipcountry","Cf-Ray","X-Forwarded-Proto","Cf-Visitor","Accept-Datetime","Origin","X-Csrf-Token","If-Unmodified-Since","Authorization","If-Modified-Since","X-Requested-With","Max-Forwards","If-Range","X-Http-Method-Override","X-Request-Id","Pragma","Upgrade-Insecure-Requests","User-Agent","Content-Type","Cache-Control","If-None-Match","If-Match","Referer","Range","Accept","Accept-Language","Cookie","Cf-Connecting-Ip"]}
    

  • administrators

    @venom777 Базу почистил, на сервере поставил валидацию.



  • @support Проверьте еще раз, отпечатки странные попадаются, предположим
    Desktop,Microsoft Windows,IE разрешение 800x556
    или
    Desktop,Microsoft Windows,Chrome разрешение 320x240 , по поводу последнего, я на глаз, не успел сохранить.


  • administrators

    @myweb101

    Desktop,Microsoft Windows,IE разрешение 800x556

    И что?

    Минимальное разрешение 200 * 200, максимальное - 3000 * 3000


Log in to reply
 

Looks like your connection to Bablosoft was lost, please wait while we try to reconnect.