Loading Bablosoft Fingerprints with [Python Selenium]

Support
  • Hello everyone i was wondering if anyone has came across to the idea of loading bablosoft fingerprints with all its json values for a Python selenium script to obviously mask our automation purpose, if so please let me know how you did it or how is the json functioning is it used with the chrome options or such, thank you so much!

  • @outsider said in Loading Bablosoft Fingerprints with [Python Selenium]:

    Hello everyone i was wondering if anyone has came across to the idea of loading bablosoft fingerprints with all its json values for a Python selenium script to obviously mask our automation purpose, if so please let me know how you did it or how is the json functioning is it used with the chrome options or such, thank you so much!

    https://github.com/CheshireCaat/bas-remote-python

  • @Fox Unfortunately there is no integration shown in the repository, OP doesn't show us how to use external fingerprints.json with over 1k values lets say, to mask the selenium

    an example

    def setup_fingerprints(self):
            # Set user agent
            self.chrome_options.add_argument(f"--user-agent={self.fingerprint_values['ua']}")
    
            # Set canvas fingerprint
            canvas_script = f"Object.defineProperty(HTMLCanvasElement.prototype, 'toDataURL', {{ value: function() {{ return '{self.fingerprint_values['canvas']}'; }} }});"
            self.driver.execute_script(canvas_script)
    
            # Set webgl fingerprint
            webgl_script = f"WebGLRenderingContext.prototype.getParameter = function(parameter) {{ return '{self.fingerprint_values['webgl']}'; }};"
            self.driver.execute_script(webgl_script)
    
            # Set audio fingerprint
            audio_script = f"Object.defineProperty(AudioContext.prototype, 'outputLatency', {{ get: function() {{ return {self.fingerprint_values['audio_properties']['AudioContextBaseLatency']}; }} }});"
            self.driver.execute_script(audio_script)
    
            # Set battery fingerprint
            battery_script = f"navigator.getBattery = function() {{ return Promise.resolve({{ charging: true, chargingTime: Infinity, dischargingTime: Infinity, level: 1 }}); }};"
            self.driver.execute_script(battery_script)
    
            # Set fonts fingerprint
            fonts_script = ""
            for font in self.fingerprint_values['fonts']:
                fonts_script += f"document.fonts.check('12px {font}');"
            self.driver.execute_script(fonts_script)
    
  • Here is the values
    https://wtools.io/paste-code/bTqa

    I want to only load values of the fingerprints that are needed to mostly mask our Automation

  • 0 Votes
    7 Posts
    304 Views
  • How to block videos from loading?

    Support
    0 Votes
    4 Posts
    593 Views
  • 0 Votes
    2 Posts
    1310 Views
  • 0 Votes
    2 Posts
    1240 Views
  • 1 Votes
    2 Posts
    1586 Views