LinuxCommandLibrary

curl-impersonate

curl with browser TLS fingerprint impersonation

TLDR

Impersonate Chrome

$ curl_chrome124 [https://example.com]
copy
Impersonate Firefox
$ curl_ff120 [https://example.com]
copy
Impersonate Safari
$ curl_safari17_0 [https://example.com]
copy
Output to file
$ curl_chrome124 -o [output.html] [https://example.com]
copy
With custom headers
$ curl_chrome124 -H "[Header: value]" [https://example.com]
copy
Follow redirects
$ curl_chrome124 -L [https://example.com]
copy

SYNOPSIS

curl_chrome\* [curloptions] url_
curl_ff\* [curloptions] url_
curl_safari\* [curloptions] url_

DESCRIPTION

curl-impersonate is a modified curl that impersonates browser TLS and HTTP fingerprints. Makes requests identical to Chrome, Firefox, Edge, or Safari. Bypasses bot detection based on TLS fingerprinting.

WRAPPER SCRIPTS

curl_chrome110, curl_chrome124

Chrome impersonation
curl_ff109, curl_ff120
Firefox impersonation
curl_safari15_5, curl_safari17_0
Safari impersonation
curl_edge101
Edge impersonation

VERSIONS

Chrome version: Impersonates Chrome, Edge, Safari
Firefox version: Impersonates Firefox

LIBCURL API

$ curl_easy_impersonate(curl, "chrome116", 1);
copy
Set target browser and whether to use default headers.

DOCKER USAGE

$ docker run --rm lwthiker/curl-impersonate:0.6-chrome \
  curl_chrome124 https://example.com
copy

CAVEATS

Some curl flags alter TLS signature and may cause detection. Wrapper scripts set necessary headers. Custom options may break impersonation.

SEE ALSO

curl(1), httpie(1), wget(1)

> TERMINAL_GEAR

Curated for the Linux community

Copied to clipboard

> TERMINAL_GEAR

Curated for the Linux community