humanemulator.net — справка. Продукт, демо и покупка — на хуманэмулятор.рф | Демо | Купить | API | лог изменений

set_plugins_info

set_plugins_info($plugins_info=""); - задать данные о плагинах в JS движок. Задает navigator.plugins (Доступна с версии 4.10.1)

Функция на вход принимает параметры:

  • $plugins_info – информация о плагинах navigator.plugins , при пустой строке - используется значение по умолчанию

    После отработки функция возвращает результат своей работы в скрипт :
  • true – успешно задали
  • false – задать не удалось

    Пример использования
    <?php
    // Scenario: Navigate to a website and set plugins information for Chrome to demonstrate set_plugins_info function
    // Path to the init.php file for connecting to the XHE API
    $xhe_host = "localhost:7010";
    if (!isset($path)){
        // Path to the init.php file for connecting to the XHE API
        $path = "../../../Templates/init.php";
        // Including init.php grants access to all classes and functionality for working with the XHE API
        require($path);
    }
    
    // The following code demonstrates the usage of the set_plugins_info function
    
    // First, navigate to a website
    $url = "https://www.google.com";
    WEB::$browser->navigate($url);
    WEB::$browser->wait(3);
    
    echo "Navigated to: " . $url;
    
    // Set plugins info for Chrome
    $plugins_info = "[{ name: 'Chrome PDF Plugin1111', filename: 'internal-pdf-viewer', description: 'Portable Document Format' },    { name: 'Chrome PDF Viewer', filename: 'mhjfbmdgcfjbbpaeojofohoefgiehjai', description: '' },    { name: 'Native Client', filename: 'internal-nacl-plugin', description: '' }]";
    $mime_types = "[{type: 'application/pdf',suffixes: 'pdf',description: '',__pluginName: 'Chrome PDF Viewer11111' },{type: 'application/x-google-chrome-pdf',suffixes: 'pdf',description: 'Portable Document Format',__pluginName: 'Chrome PDF Plugin'},{type: 'application/x-nacl',suffixes: '',description: 'Native Client Executable',enabledPlugin: Plugin,__pluginName: 'Native Client'},{type: 'application/x-pnacl',suffixes: '',description: 'Portable Native Client Executable',__pluginName: 'Native Client'}]";
    
    $result = WEB::$browser->set_plugins_info($plugins_info, $mime_types);
    
    // Display the result
    if ($result) {
        echo "\n\nSuccessfully set plugins info";
        echo "\nPlugins: " . $plugins_info;
        echo "\nMIME Types: " . $mime_types;
    } else {
        echo "\n\nFailed to set plugins info";
    }
    
    // Quit the application
    WINDOW::$app->quit();
    ?>
    # Additional paths
    import sys
    sys.path.insert(0, '../../../Templates PY/')
    
    xhe_host = "127.0.0.1:7013"
    from xweb_human_emulator import *
    
    # начало
    echo("<hr><font color=blue>browser.xxxxxxxxx</font><hr>")
    
    # 1 
    echo("1. Зададим navigaror.plugins : ")
    echo(browser.set_plugins_info("[\
    {name:'Shockwave Flash', description : 'Shockwave Flash 24.0 r0', filename : 'Flash.ocx', version : '24.0.0.194' },\
    { name:'name2', description : 'desc2', filename : 'filename2' }\
    ]"),"<br>")
    
    # 2 
    echo("2. Перейдем на страницу для детектирвоания браузера : ")
    echo(browser.navigate("panopticlick.eff.org/results?&t=111&dnt=111&a=111#fingerprintTable"),"<br>")
    anchor.click_by_name("showFingerprintLink2")
    sleep(5)
    
    # 3
    echo("3. Зададим navigaror.plugins : ")
    echo(browser.set_plugins_info(),"<br>")
    
    # 4 
    echo("4. Перейдем на страницу для детектирвоания браузера : ")
    echo(browser.navigate("panopticlick.eff.org/results?&t=111&dnt=111&a=111#fingerprintTable"),"<br>")
    anchor.click_by_name("showFingerprintLink2")
    
    # конец
    echo("<hr><br>")
    
    # Quit
    app.quit()
    #region using
    
    using System;
    using System.Diagnostics;
    using System.Collections.Generic;
    using System.Linq;
    using System.IO;
    using System.Text;
    using System.Threading;
    
    using XHE;
    using XHE.XHE_DOM;
    using XHE.XHE_System;
    using XHE.XHE_Window;
    using XHE.XHE_Web;
    
    #endregion
    
     class Program:XHEScript
     {
    	  static void Main(string[] args)
    	  {
    			// init XHE
    			server = "localhost:7010";
    			InitXHE();
    
    			// начало
    			echo("<hr><font color=blue>browser.set_app_info</font><hr>");
    				
    			// 1 
    			echo("1. Зададим navigaror.plugins : ");
    			echo(browser.set_plugins_info("[{name:'Shockwave Flash', description : 'Shockwave Flash 24.0 r0', filename : 'Flash.ocx', version : '24.0.0.194' }, { name:'name2', description : 'desc2', filename : 'filename2' }]")+"<br>");
    
    			// 2 
    			echo("2. Перейдем на страницу для детектирвоания браузера : ");
    			echo(browser.navigate("panopticlick.eff.org/results?&t=111&dnt=111&a=111#fingerprintTable")+"<br>");
    			anchor.click_by_name("showFingerprintLink2");
    			sleep(5);
    
    			// 3
    			echo("3. Зададим navigaror.plugins : ");
    			echo(browser.set_plugins_info()+"<br>");
    
    			// 4 
    			echo("4. Перейдем на страницу для детектирвоания браузера : ");
    			echo(browser.navigate("panopticlick.eff.org/results?&t=111&dnt=111&a=111#fingerprintTable")+"<br>");
    			anchor.click_by_name("showFingerprintLink2");
    
    			// конец
    			echo("\n\n");
    
    			app.quit();            
    	  }
    }
    // подключим функциональные объекты, если еще не подключен
    xhe_host="127.0.0.1:7022";
    echo=require("../../../Templates JS/init.js");
    
    // начало
    echo("<hr><font color=blue>browser.set_home_page</font><hr>");
    
    // 1 
    echo("1. Зададим navigaror.plugins : ");
    echo(browser.set_plugins_info("[{name:'Shockwave Flash', description : 'Shockwave Flash 24.0 r0', filename : 'Flash.ocx', version : '24.0.0.194' }, { name:'name2', description : 'desc2', filename : 'filename2' }]")+"<br>");
    
    // 2 
    echo("2. Перейдем на страницу для детектирвоания браузера : ");
    echo(browser.navigate("panopticlick.eff.org/results?&t=111&dnt=111&a=111#fingerprintTable")+"<br>");
    anchor.click_by_name("showFingerprintLink2");
    app.sleep(5);
    
    // 3
    echo("3. Зададим navigaror.plugins : ");
    echo(browser.set_plugins_info()+"<br>");
    
    // 4 
    echo("4. Перейдем на страницу для детектирвоания браузера : ");
    echo(browser.navigate("panopticlick.eff.org/results?&t=111&dnt=111&a=111#fingerprintTable")+"<br>");
    anchor.click_by_name("showFingerprintLink2");
    
    // конец
    echo("\n");
    
    // Quit
    app.quit();

    =============================================
    Browser    Объекты    DOM  System  Vision  Web  Window        
    =============================================
    если что-то непонятно или необходимо узнать или считаете что надо добавить по работе этой функции, пишите в комментарии или на наш форум
    .