View Source BrowserForge.Headers.Generator (BrowserForge v0.1.0)
Generates HTTP headers based on a set of constraints.
Summary
Functions
Generates headers using the default options and their possible overrides.
Creates a new HeaderGenerator with the given options.
Types
@type browser_option() :: String.t() | BrowserForge.Headers.Browser.t()
@type t() :: %BrowserForge.Headers.Generator{ header_generator_network: BrowserForge.BayesianNetwork.t(), headers_order: map(), input_generator_network: BrowserForge.BayesianNetwork.t(), options: map(), unique_browsers: list() }
Functions
Generates headers using the default options and their possible overrides.
Options
:browser- Browser(s) or Browser struct(s) to generate headers for:os- Operating system(s) to generate headers for:device- Device(s) to generate headers for:locale- Language(s) for the Accept-Language header:http_version- HTTP version to use (1 or 2):user_agent- User-Agent(s) to use:request_dependent_headers- Known values of request-dependent headers:strict- Whether to throw an error if headers cannot be generated
Examples
iex> generator = Generator.new()
iex> Generator.generate(generator)
%{"User-Agent" => "...", ...}
iex> Generator.generate(generator, browser: "chrome", os: "windows")
%{"User-Agent" => "...", ...}
Creates a new HeaderGenerator with the given options.
Options
:browser- Browser(s) or Browser struct(s) to generate headers for:os- Operating system(s) to generate headers for:device- Device(s) to generate headers for:locale- Language(s) for the Accept-Language header:http_version- HTTP version to use (1 or 2):strict- Whether to throw an error if headers cannot be generated
Examples
iex> Generator.new()
%Generator{}
iex> Generator.new(browser: "chrome", os: "windows", device: "desktop")
%Generator{}