Skip to main content

Generate Python Requests code from HAR file

Project description

Downloads PyPI version

har2requests

  • Step 1: Interact with a website from your usual browser
  • Step 2: automatically generate the Python code to replay your requests

Motivation

To write bots in Python, the two main options are:

Of course, requests bots are more stable but they require more daunting work to reverse engineer the javascript code and reproduce every request made by the client.

Discover har2requests!

Features

  • Automatic requests code generation from a HAR file
  • Detection of the headers common to all requests and code factorization
  • Clever inference on the origin of authorization headers
  • Code formatting using black

Installation

pip install har2requests

Usage

From Chrome or Firefox, go to the Network tab of the Developer Tools, put the filters you want and export to HAR.

To read from a file:

har2requests input.har > output.py

To read from the clipboard:

pbpaste | har2requests - > output.py

By default, OPTIONS requests are ignored. To include them, use --include-options.

When encountering errors, you can use the --unsafe feature that will display warnings instead of errors if the HAR file does not fit the specification.

har2requests uses string matching algorithms to find the origin of authorization headers. If your file is too big, it might be slow. You can disable it with --no-infer.

Workflow tips

  • --exclude-cookie-headers avoids the need to manually edit the output if all cookies are assigned by the website each session (the common scenario).
  • --generate-assertions helps pinpoint unexpected variations quickly.
  • --debug-requests helps if you need to debug the requests/responses themselves.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

har2requests-0.2.3.tar.gz (8.7 kB view details)

Uploaded Source

Built Distribution

har2requests-0.2.3-py3-none-any.whl (9.6 kB view details)

Uploaded Python 3

File details

Details for the file har2requests-0.2.3.tar.gz.

File metadata

  • Download URL: har2requests-0.2.3.tar.gz
  • Upload date:
  • Size: 8.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.5.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.8.8

File hashes

Hashes for har2requests-0.2.3.tar.gz
Algorithm Hash digest
SHA256 91e1588f6e589057c65bd8827dec29d315844fd32ea2c91b1c346b09e65edea5
MD5 1c311147b87b743e4c82410410219265
BLAKE2b-256 0746dd18a57f41119c905762c26e5302794667d70e2827553192e34ebbfe1a4f

See more details on using hashes here.

File details

Details for the file har2requests-0.2.3-py3-none-any.whl.

File metadata

  • Download URL: har2requests-0.2.3-py3-none-any.whl
  • Upload date:
  • Size: 9.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.5.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.8.8

File hashes

Hashes for har2requests-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 64ab9eabcbabca5a2fc06f8a4e5c8465864cfea9988eabfb3e0d4fb083bc9c2a
MD5 970a535940d4392029bc5010e67b53c6
BLAKE2b-256 eafd597defd7e5a1f42ce62520114a751547c6772af4562c2ea9443f8976e03a

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page