1. Читаю статью https://xn--80awbbeioodeq4h3a.xn--p1ai/blog/%D1%83% ... %80%D0%B5/
Там написано:
В реальном хроме установлено с десяток плагинов, это видно при переходе на chrome://extensions/Посмотреть информацию по реальным плагином можно установив их в браузер Chrome, а потом через Инструменты разработчика (F12) перейти в консоль и там ввести navigator.plugins. Появится информация по плагинам в следующем виде:
Однако, когда в реальном хроме я перехожу в инструменты разработчика и во вкладке консоль ввожу navigator.plugins я вижу только 3 плагина, которые по всей видимости идут с хромом в комплекте и устанвлены по умолчанию.
Код: Выделить всё
PluginArray {0: Plugin, 1: Plugin, 2: Plugin, Chrome PDF Plugin: Plugin, Chrome PDF Viewer: Plugin, Native Client: Plugin, length: 3}
0: Plugin {0: MimeType, application/x-google-chrome-pdf: MimeType, name: "Chrome PDF Plugin", filename: "internal-pdf-viewer", description: "Portable Document Format", length: 1}
1: Plugin {0: MimeType, application/pdf: MimeType, name: "Chrome PDF Viewer", filename: "mhjfbmdgcfjbbpaeojofohoefgiehjai", description: "", length: 1}
2: Plugin {0: MimeType, 1: MimeType, application/x-nacl: MimeType, application/x-pnacl: MimeType, name: "Native Client", filename: "internal-nacl-plugin", description: "", …}
length: 3
Chrome PDF Plugin: Plugin {0: MimeType, application/x-google-chrome-pdf: MimeType, name: "Chrome PDF Plugin", filename: "internal-pdf-viewer", description: "Portable Document Format", length: 1}
Chrome PDF Viewer: Plugin {0: MimeType, application/pdf: MimeType, name: "Chrome PDF Viewer", filename: "mhjfbmdgcfjbbpaeojofohoefgiehjai", description: "", length: 1}
Native Client: Plugin {0: MimeType, 1: MimeType, application/x-nacl: MimeType, application/x-pnacl: MimeType, name: "Native Client", filename:
......
Я хотел взять информацию по нескольким десяткам плагинов, а затем брать 3-4 случайных и добавлять в Human Emulator через метод $browser->set_plugins_info($plugins,$mimes_types); формируя тем самым уникальный профиль браузера.
Но проблема в том, что через navigator.plugins в реальном хроме информации по установленным плагинам нет.
Что я делаю не так? Где взять инфу по установленным плагинам?
2. При работе с крупными сервисами (такими как Google, Facebook), насколько безопасно менять версию операционной системы в user-agent? Например у меня windows 8.1 и я буду в Human Emulator в user-agent случайным образом ставить array("NT 6.1","NT 6.2","NT 6.3","NT 10.0");
Просекут, что у меня установлена Fake OS?
На сайте whoer.net в разделе ОС есть пункт TCP/IP:, у меня он "Windows 7 or 8 (Ethernet or modem, MTU: 1500)"
Т.е. по идее я могу безопасно рандомить array("NT 6.1","NT 6.2","NT 6.3"); но Windows 10 лучше не включать в него? Или можно все версии Windows рандомить?
Как вообще формируются сетевые отпечатки операционной системы, можно ли их подделывать? Кто в теме, поделитесь инфой)
3. заметил небольшой косяк в методах
$browser->set_width();
$browser->set_height();
Например, устанавливаю $browser->set_width(1000); и перехожу на http://f.vision/ - страница просто обрезается, оставляя белое поле. Далее, перехожу по ссылке "Start advanced tests" на этой странице и вторая страница просто не помещается в окно браузера:
В случае с яндексом, например вызов $browser->set_width(300); сразу показывает капчу. Хотя без этой команды капчи нет и можно искать.
Проверьте пожалуйста, возможно эти методы работают некорректно и "палятся сайтами". (а может это сайты косячат)
Может лучше сделать так, чтобы вызов $browser->set_width(); "растягивал" или "ужимал" левую панель с кодом, а $browser->set_height(); "растягивал" или "ужимал" панель отладки?