Usage
Output (Piping) Cookies
Section titled “Output (Piping) Cookies”cookies.txt Format (curl, wget)
Section titled “cookies.txt Format (curl, wget)”You can output cookies in Netscape “cookies.txt” format and pipe them to curl or wget.
Using curl:
curl -b <(gateau output --format netscape) https://example.comIn this example, gateau will output cookies from Firefox in Netscape format, and curl will import those which match the requested domains and use them for the request.
Using wget:
wget --load-cookies <(gateau output --browser=chrome --format netscape) https://example.comIn this example, gateau will output cookies from Chrome in Netscape format, and wget will import those which match the requested domains and use them for the request.
httpie Sessions
Section titled “httpie Sessions”Output cookies in httpie session format (experimental).
Using httpie:
http --session-read-only <(gateau output --format httpie-session example.com) example.comIn this example, gateau will output cookies from Firefox in httpie session format, and httpie will import it as an anonymous session.
Saving named sessions:
HOST=adventofcode.comSESSION_NAME=aocCONFIG_PATH=${XDG_CONFIG_HOME:-$HOME/.config}gateau output --format=httpie-session $HOST > $CONFIG_PATH/httpie/sessions/$HOST/$SESSION_NAME.jsonhttps --session=$SESSION_NAME $HOSTBrowser Session
Section titled “Browser Session”Create a browser session within a new context and export the cookies after the session termination.
Example:
gateau wrap --browser=chromium --session -- curl https://example.comWrapping Commands
Section titled “Wrapping Commands”Wrap commands (curl, wget, httpie) to import cookies directly.
Example with curl:
gateau wrap curl https://example.comThis will wrap the command curl https://example.com and import cookies for the request.
Example with httpie:
gateau wrap --browser=chromium http GET https://example.comThis will wrap the command http GET https://example.com and import cookies for the request.
Piping vs Wrapping
Section titled “Piping vs Wrapping”Piping with Process Substitution
Section titled “Piping with Process Substitution”Piping is flexible and secure but requires a shell that supports process substitution.
Example:
curl -b <(gateau output --format netscape) https://example.comWrapping
Section titled “Wrapping”Wrapping avoids the need for process substitution and temporary files but is limited to supported commands.
Example:
gateau wrap curl https://example.comBypass Database File Locking
Section titled “Bypass Database File Locking”Use the --bypass-lock flag to bypass database file locking (not recommended).
Example:
gateau wrap --bypass-lock curl https://example.com