Skip to main content

Help convert dynamic webistes to static ones.

Project description

Geler

Help convert dynamic websites to static ones.

Install

pip install geler-CERTIC

Usage

As a library in your own program:

from geler import freeze
result = freeze("https://acme.tld/", "/path/to/local/dir/", thread_pool_size=1, http_get_timeout=30)
for err in result.http_errors:
    logger.error(
        f'status {err.get("status_code")} on URL  {err.get("url")}. Contents below:\n{err.get("content")}'
    )

As a CLI tool:

$> geler --help
usage: geler [-h] [-t THREAD_POOL_SIZE] [--http-get-timeout HTTP_GET_TIMEOUT] start-from-url save-to-path

positional arguments:
  start-from-url        -
  save-to-path          -

optional arguments:
  -h, --help            show this help message and exit
  -t THREAD_POOL_SIZE, --thread-pool-size THREAD_POOL_SIZE
                        1
  --http-get-timeout HTTP_GET_TIMEOUT
                        30

Why ?

For MaX and associated tools, we needed a lightweight, portable, pure Python solution to convert small dynamic websites to static ones.

Alternatives

This tool has a narrow scope, on purpose. Please turn to these solutions if you need more:

Limitations

  • only works with HTTP GET
  • does not submit forms (even with GET method)
  • only considers URLs in src or href attributes
  • only considers URLs with http or https schemes
  • only downloads what is in the same netloc (same domain, same port) as the start URL
  • only patches URLs in *.html files and *.css files, not *.js files.
  • does not throttle requests
  • does not respect robots.txt

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

geler_certic-0.2.2.tar.gz (5.0 kB view details)

Uploaded Source

Built Distribution

geler_certic-0.2.2-py3-none-any.whl (6.0 kB view details)

Uploaded Python 3

File details

Details for the file geler_certic-0.2.2.tar.gz.

File metadata

  • Download URL: geler_certic-0.2.2.tar.gz
  • Upload date:
  • Size: 5.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.0 CPython/3.9.4 Darwin/24.1.0

File hashes

Hashes for geler_certic-0.2.2.tar.gz
Algorithm Hash digest
SHA256 8e0fe0d15223b6faf37835ddd84c47379f77b3f09bf37d0c9cb369289da6e55b
MD5 ef2159a07c4d6815da065e12e7cfcb98
BLAKE2b-256 9383950d60dd23486ddab3f6dd175776a15deca123f1fee4c2c78b391ce8692e

See more details on using hashes here.

File details

Details for the file geler_certic-0.2.2-py3-none-any.whl.

File metadata

  • Download URL: geler_certic-0.2.2-py3-none-any.whl
  • Upload date:
  • Size: 6.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.0 CPython/3.9.4 Darwin/24.1.0

File hashes

Hashes for geler_certic-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 33f4f1679d61ecd4769c8979271ea1a91edfc829cd8a376dc28e00a872006f52
MD5 bc28b7ac7846dcbe86a25a41a3fe4dda
BLAKE2b-256 d9bca3a962f39fb7b869c1b5314d89e10238cff8c439cc9b6a24ea967d41a99c

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