Skip to main content

job-scrapper

Scrape job offers and extract structured data using AI (Claude).

Features

  • Scrapes job listing pages using Selenium with the standard Chrome WebDriver
  • Extracts structured data (title, company, skills, stack, process…) via Claude LLM
  • Outputs a formatted Markdown fiche de poste
  • Caches results by URL hash under var/jobs/
  • Opens a live browser by default for manual interaction (Cloudflare, login walls)

Install

uv sync

Usage

uv run job-scrapper <URL>                            # opens browser (default)
uv run job-scrapper <URL> --no-live                  # headless mode
uv run job-scrapper <URL> --output-dir ~/out         # custom output directory
uv run job-scrapper <URL> --model claude-haiku-4-5   # cheaper/faster model

Development

uv sync --extra dev --extra lint
pre-commit install

Lint:

ruff check src/
ruff format src/

Environment

Variable Required Description
ANTHROPIC_API_KEY Yes Claude API key

Metadata

Release files for job-scrapper 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 job-scrapper 0.1.0
File Size Uploaded
job_scrapper-0.1.0.tar.gz 24.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for job-scrapper 0.1.0
File Interpreter ABI Platform
job_scrapper-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 29.0 kB

Release files / job_scrapper-0.1.0.tar.gz

Download URL job_scrapper-0.1.0.tar.gz
Size 24.4 kB
Tags Source
SHA-256 checksum
How to use checksums
9ed793dae5f2a24c90a8d0a8afbfbbcaaebbb1f6f1ec12ed72d08f6ba69ef994
BLAKE2b-256 checksum
How to use checksums
333be0638c730e1acb775e1a5db4bbba19cd70913713ad9b5026b143100d3b2e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

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

Download URL job_scrapper-0.1.0-py3-none-any.whl
Size 4.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
56111077051a620936f556942e8efb08a27b9a0c722415294ca3b156940b585f
BLAKE2b-256 checksum
How to use checksums
500f892e9e28bd8ab0f9c8481118d7814348ed6e4a1295ec081b5376d0617e97
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

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