TiktokPassport::Marionette
Inherits Reference / Object
Constants
CHROME_CAPABILITIES = Selenium::Chrome::Capabilities.new.tap do |conf|
conf.chrome_options.args = ["--headless", "--disable-blink-features=AutomationControlled", "--disable-infobars", "--window-size=1920,1080", "--start-maximized"]
conf.chrome_options.exclude_switches = ["enable-automation"]
end
The remote browser desired capabilities.
SCRIPTS_TO_EXECUTE_ON_PAGE_LOAD = begin
buffer = uninitialized ::StaticArray(String, 16)
{% for key, index in ["/tmp/tmp.pJpkhp/src/src/tiktok_passport/marionette/javascript/evasions/utils.js", "/tmp/tmp.pJpkhp/src/src/tiktok_passport/marionette/javascript/evasions/chrome.app.js", "/tmp/tmp.pJpkhp/src/src/tiktok_passport/marionette/javascript/evasions/chrome.csi.js", "/tmp/tmp.pJpkhp/src/src/tiktok_passport/marionette/javascript/evasions/chrome.loadTimes.js", "/tmp/tmp.pJpkhp/src/src/tiktok_passport/marionette/javascript/evasions/chrome.runtime.js", "/tmp/tmp.pJpkhp/src/src/tiktok_passport/marionette/javascript/evasions/iframe.contentWindow.js", "/tmp/tmp.pJpkhp/src/src/tiktok_passport/marionette/javascript/evasions/media.codecs.js", "/tmp/tmp.pJpkhp/src/src/tiktok_passport/marionette/javascript/evasions/navigator.hardwareConcurrency.js", "/tmp/tmp.pJpkhp/src/src/tiktok_passport/marionette/javascript/evasions/navigator.languages.js", "/tmp/tmp.pJpkhp/src/src/tiktok_passport/marionette/javascript/evasions/navigator.permissions.js", "/tmp/tmp.pJpkhp/src/src/tiktok_passport/marionette/javascript/evasions/navigator.plugins.js", "/tmp/tmp.pJpkhp/src/src/tiktok_passport/marionette/javascript/evasions/navigator.vendor.js", "/tmp/tmp.pJpkhp/src/src/tiktok_passport/marionette/javascript/evasions/navigator.webdriver.js", "/tmp/tmp.pJpkhp/src/src/tiktok_passport/marionette/javascript/evasions/webgl.vendor.js", "/tmp/tmp.pJpkhp/src/src/tiktok_passport/marionette/javascript/evasions/window.outerdimensions.js", "/tmp/tmp.pJpkhp/src/src/tiktok_passport/marionette/javascript/signer.js"] %}
{% if env("MINIFY_JS") %}
buffer[{{ index }}] = {{ (`uglifyjs --validate #{key}`).stringify }}
{% else %}
buffer[{{ index }}] = {{ read_file(key) }}
{% end %}
{% end %}
buffer
end
An array of javascript fucntions to execute on page load.
Constructors
new(remote_url : String)
SourceInstance methods
evaluate_cdp(command, params = {} of String => String)
Evaluates a CDP (Selenium Chrome DevTools Protocol) command.