Skip to main content

klyrek-crawler

Breadth-first crawler that maps a target's pages, forms, and script references into a klyrek_core.models.ScanResult. Every fetch goes through a KlyrekHTTPClient (klyrek-http), so scope enforcement and rate limiting are inherited automatically — the crawler additionally skips enqueuing out-of-scope links so it doesn't spend its page budget chasing hosts it isn't authorized to touch.

from klyrek_core.config import KlyrekConfig
from klyrek_core.models import Target
from klyrek_core.scope import AuthorizationScope
from klyrek_http.client import KlyrekHTTPClient
from klyrek_crawler.crawler import Crawler

scope = AuthorizationScope(authorized_hosts=["target.com", "*.target.com"])
target = Target(base_url="https://target.com/", hosts=["target.com"])

with KlyrekHTTPClient(scope, config=KlyrekConfig(rate_limit_per_host=2)) as client:
    crawler = Crawler(client, max_pages=200, max_depth=3)
    result = crawler.crawl(target)

print(len(result.endpoints), "endpoints discovered")

Endpoints are tagged by how they were found: source="crawler" for pages, "crawler-form" for form actions (with field names captured as params), and "crawler-script" for referenced JavaScript files (the raw material klyrek-js consumes).

Metadata

Release files for klyrek-crawler 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for klyrek-crawler 0.1.0
File Size Uploaded Provenance Actions
klyrek_crawler-0.1.0.tar.gz 5.1 kB Without provenance Details for klyrek_crawler-0.1.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for klyrek-crawler 0.1.0
File Interpreter ABI Platform Actions
klyrek_crawler-0.1.0-py3-none-any.whl Python 3 none any Details for klyrek_crawler-0.1.0-py3-none-any.whl

Total release size: 10.1 kB

Release files / klyrek_crawler-0.1.0.tar.gz

Download URL klyrek_crawler-0.1.0.tar.gz
Size 5.1 kB
Tags Source
SHA-256 checksum
How to use checksums
aca22ca1cc6362fc1ec678382582cfea5f8479ff32ea2f4921678d8f8f0c1a6c
BLAKE2b-256 checksum
How to use checksums
dec8fe55165610af08eb9467760f14284fadd72858950c13c06d1b7e53b32646
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.2

Release files / klyrek_crawler-0.1.0-py3-none-any.whl

Download URL klyrek_crawler-0.1.0-py3-none-any.whl
Size 5.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ed2c9c9fd955ef126af5500b11640a4d283c98936de8a6707e8bef6a18217af6
BLAKE2b-256 checksum
How to use checksums
1fbb9e37465bdc152588ad75aa526945f9c156f0460328cdd574b08260fd992a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.2

Security for klyrek-crawler 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page